Linux常用命令
来源:互联网 发布:hammer.js中文文档 编辑:程序博客网 时间:2024/06/03 18:10
1、替换当前目录下所有字符串
在Android的开发过程中,要将Android移植到自己的平台并将所有关于Android.mk字符串重命名为Mydroid.mk。
#sed -i s/"Android.mk"/"Mydroid.mk"/g `grep -rl "Android.mk" ./`
首先grep当前目录下包含”Android.mk”字符串的文件,然后输入给sed进行替换。注意包住grep命令的是`(TAB键上面的字符),而不是’(单引号)。
可在grep命令后面加上–exclude_dir=”.git”排除对.git/ 目录下文件的替换。
2、查看某个xxx命令的帮助
#man xxx
3、rename批量文件操作
将Android项目中所有文件夹下名字为Androd.mk的文件重命名为Mydroid.mk
#find ./ -name "Android.mk" | xargs rename "s/Android.mk/Mydroid.mk/g"
4、scp 局域网内拷贝
假设一份Android的source code在A(192.168.1.2)电脑上(~/work/A_Android),要将其拷贝到同一局域网内的B电脑(192.168.1.3 用户名为:xxx)的目录(~/work/B_Android)下:
#scp -r ~/work/A_Android/ xxx@192.168.1.3:~/work/B_Android
5、查看某个目录的占用空间
#du -sh ./
6、软连接
#ln -s entity_file virtual_file
其中entity_file为真是存在的文件,virtual_file为软连接生成的文件。
7、环境变量
#export MYVAR=true // 添加环境变量 MYVAR#env | grep MYVAR // 在环境变量中查找 MYVAR#unset MYVAR // 删除环境变量 MYVAR
8、获取当前CPU温度
#cat /sys/class/thermal/thermal_zone0/temp
获取到的值除以1000就是当前CPU的摄氏温度了。
9、挂载只读分区
#mount -o remount rw /system
-o : 指定加载文件系统的选项;
remount: 为 -o 的选项,重新加载设备,常用于改变设备的状态;
rw: 为 -o 的选项,以可读写模式加载;
/system: 重新将挂载的只读的/system 分区挂载为可读写。
10、挂载U盘
#mount -t vfat /dev/block/sda1 /mnt/udisk1
其中sda1是根据u盘识别过来的,后面的数字有可能会有差异。
11、复制粘贴
在Linux shell窗口下”ctrl + shift + c” 和 ”ctrl + shift + v” 为复制粘贴。
shift + insert 可以进行粘贴。
12、编译过程中的信息输出到文件
#make 2>&1 | tee build.log
13、串口工具minicom的使用
#sudo minicom -s
启动minicom的配置选项,通过字母选择配置选项。启动minicom之后可以先按 ctrl+a 然后再按 z 可以出现帮助界面,之后选择对应字母可以配置minicom的功能。选择”Serial port setup”并做如下配置:
如果说minicom只输入打印信息但是键盘无法输入,此时是由于打开硬件流控,设置”Hardware Flow Control” 为 NO 即可。
minicom保存log
首先打开minicom,然后按一下ctrl + a,再按z键,会出现下面这个界面:
看到Capture on/off这项了吗,按下L键,命名要保存的log名称即可。
14、! 的神奇用法
http://www.linuxidc.com/Linux/2015-05/117774.htm
! 是可以指定执行前面执行过的第几条命令,通常跟 history命令搭配。比如说经常会出现这种情况,有个命令 xxx,此时你去执行它,比如
#xxx argv1 ~/work/other
这样会提示你没有权限执行 xxx 命令,正常你会重新做如下处理:
#sudo xxx argv1 ~/work/other
但是此时我们可以使用 !! 来替代上次的命令,可以使用
#sudo !!
你可以运行 !-1、!-2 或者 !-7 等命令来执行你记录序列中的倒数第一条命令、倒数第二条命令已经倒数第七条等等
15、查找命令
可以使用 ctrl + r,然后键入你要查找的关键字符串,此时会将已经执行过的命令自动补全。
(reverse-i-search)`make ker': make kernelimage
其中 make ker 是我敲入的,而 make kernelimage 是查找的结果,回车就可以执行 make kernelimage 的操作。
16、grep 忽略某个目录
#grep -rn “xxx” -R --exclude-dir=Dir_Name
17、while true
假设我们要持续cat 某一个GPIO的状态,不用一直执行如下的命令:
#cat /sys/class/gpio/gpio88/value
我们可以在 shell 下执行 while true 命令来连续执行某个命令,比如说:
#while true> do> cat /sys/class/gpio/gpio88/value> sleep 2> done
其中 do 和 done 中间为要循环执行的命令,sleep 2表示休眠2s。
18、反汇编
使用 objdump
工具反汇编生成的vmlinux
文件,将反汇编的结果输出给vmlinux.log
#../prebuilts/gcc/linux-x86/arm/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-objdump -d -l -f -g -S vmlinux > vmlinux.log
19、grep两个字符串
Victor@Victor-HP:/$cat /proc/1/statusName: initState: S (sleeping)Tgid: 1Ngid: 0Pid: 1PPid: 0TracerPid: 0Uid: 0 0 0 0Gid: 0 0 0 0FDSize: 64Groups: NStgid: 1NSpid: 1NSpgid: 1NSsid: 1VmPeak: 33900 kBVmSize: 33860 kBVmLck: 0 kBVmPin: 0 kBVmHWM: 4296 kBVmRSS: 3496 kBVmData: 1636 kBVmStk: 136 kBVmExe: 248 kBVmLib: 3068 kBVmPTE: 88 kBVmPMD: 12 kBVmSwap: 272 kBThreads: 1SigQ: 0/15244SigPnd: 0000000000000000ShdPnd: 0000000000000000SigBlk: 0000000000000000SigIgn: 0000000000001000SigCgt: 00000001a0016623CapInh: 0000000000000000CapPrm: 0000003fffffffffCapEff: 0000003fffffffffCapBnd: 0000003fffffffffSeccomp: 0Cpus_allowed: ffCpus_allowed_list: 0-7Mems_allowed: 00000000,00000001Mems_allowed_list: 0voluntary_ctxt_switches: 4450nonvoluntary_ctxt_switches: 2503
比如说我只想要VmSize
和VmRSS
的内容,可以使用如下命令:
#cat /proc/1/status | grep -E 'VmSize|VmRSS'
Victor@Victor-HP:/$cat /proc/1/status | grep -E 'VmSize|VmRSS'VmSize: 33860 kBVmRSS: 3496 kB
- 【linux 常用命令】常用命令整理
- linux常用命令
- Linux常用命令
- LINUX 常用命令
- linux常用命令
- Linux 常用命令
- Linux 常用命令
- Linux常用命令
- LINUX常用命令
- Linux 常用命令
- linux常用命令
- Linux常用命令
- Linux常用命令
- Linux 常用命令
- Linux常用命令
- Linux 常用命令
- Linux 常用命令!
- Linux 常用命令
- mybatis调用oracle存储过程返回游标 读取到java的List<Map>
- 折半查找、插值查找以及斐波那契查找
- Jsp、servlet、jdbc数据流向网络动态编程
- 过滤html标签,保留指定参数
- 高级软件架构师实战培训阶段一
- Linux常用命令
- 数据库的主从配置 读写分离 中间件之-------Amoeba
- Python+Selenium练习篇之23-组合键-全选文字
- 贪心算法//旧文迁移
- server 内部异常堆栈跟踪的结尾
- 4.10
- JSON WEB TOKEN 介绍
- 存储阵列技术与应用
- SSL 2639 简单的数学题