1.统计代码行数
find . -name "*.h" |xargs cat|wc -l
2.解压缩
tar -xvf file.tar
tar -xzvf file.tar.gz
3.后台运行命令
nohup ./main.o ./netlib/afiro.mps >out.file 2>&1 &
4.vim命令
将n1到那n2行之间内容考到n3行下
:n1,n2 co n3
将n1到那n2行之间内容删除
:n1,n2 d
将n1到那n2行之间内容移动到n3行下
:n1,n2 m n3
vim中统计字符串数量
:%s/string//gn
重新加载
:e
代码中 string 为要查找的字符串
5.输出文件out.txt中的result
grep -n "result" out.txt
6.传输文件
两台机器IP分别为:A.104.238.161.75,B.43.224.34.73。
在A服务器上操作,将B服务器上/home/lk/目录下所有的文件全部复制到本地的/root目录下,命令为:
scp -r root@43.224.34.73:/home/lk /root
在A服务器上将/root/lk目录下所有的文件传输到B的/home/lk/cpfile目录下,命令为:
scp -r /root/lk root@43.224.34.73:/home/lk/cpfile
连接服务器(端口5555)
ssh -p5555 104.238.161.75
7.比较两个文件的不同
diff file1 file2
8.想返回上一次的目录
cd -
9.在当前目录下查找文件
find . -name filename
10.查找当前目录下所有.h文件把xxxx替换为yyyy
sed -i s/xxxx/yyyy/g ./*.h
或者直接在vim下
:%s/xxxx/yyyy/g
11.后台执行程序
后台挂起命令
nohup command > myout.file 2>&1 &
查看后台在执行的命令
ps -fu username
杀死进程
kill -9 进程号
12当前目录下查找字符串
grep -rn "hello" *
* : 表示当前目录所有文件,也可以是某个文件名
-r 是递归查找
-n 是显示行号
-R 查找所有文件包含子目录
-i 忽略大小写
13.统计文件个数
统计当前文件夹下文件的个数
ls -l |grep "^-"|wc -l
统计当前文件夹下文件的个数,包括子文件夹里的
ls -lR|grep "^-"|wc -l
统计当前目录下以mps结尾的文件个数
ls ./*.mps |wc -l
14.删除文件中特定的行
删除所有mps文件中的第1到第4行
sed -i 1','4'd' *.mps
不固定到行号,比如我要删除带adc字符串的某一行以及后面4行
#!/bin/sh
myfile=test.txt
startLine=`sed -n '/adc/=' $myfile` #先计算带adc字符串行的行号
lineAfter=4
let endLine="startLine + lineAfter"
sed -i $startLine','$endLine'd' $myfile
15.查看配置
查看操作系统
head -n 1 /etc/issue
查看CPU信息
cat /proc/cpuinfo
查看内存信息
free -h
16.MATLAB挂机命令
nohup matlab -nodesktop -nosplash -r testfile >log.txt &
17.若下载出现问题
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null