shell常用命令

来源:互联网 发布:dw添加淘宝旺旺链接 编辑:程序博客网 时间:2024/06/06 08:49

1. echo

echo 用于输出,相当于C语言中的printf

用echo输出变量的值,需要在变量前面加$。

#输出a的值

a=1

echo $a
shell中变量不需要定义,直接赋值;要用到变量时,需要加$。

2. 管道(|)

命令之间的输入。将一个命令的输出作为另一个命令的输入。管道相当于一种过滤功能。

3. grep

在文件中查找字符串

grep “hello” file.txt | wc –l

在文件file.txt中查找“hello”并统计hello的行数

4. 重定向命令

将结果写入到文件

> 写入到文件并覆盖文件内容

>> 追加写入到文件

5. 反短斜线

将一个命令的输出作为另外一个命令的命令行参数。作为另外一个命令的参数;对另一个值赋值。

filelist=`ls ./`

filelist中的内容为文件名,而不是路径。

tar -zcvf lastmod.tar.gz `find . -mtime -1 -type f-print`  #将查找到的结果添加到压缩文件

6. 快捷操作符 && ||

同C语言中的与、或功能,巧妙之处在于避免了条件判断。

7. wc

统计文件中的字符数

wc –w 统计文件中的字数

wc –l 统计文件的行数

wc –c 统计文件的字符数

8. cp

文件拷贝

cp sourcefile destfile

9. mv

mv oldname newname 重命名文件或移动文件

10.rm

rm file删除文件,注意不是目录,rm –rf file用于删除目录

-f 强制删除; -r 递归式删除本目录下全部文件和目录

11.cat

cat filename将文件内容输出到屏幕

将文件加上行号cat –n filename

将文件加上行号(空行除外) cat –b filename

从键盘创建一个文件 cat  >filename ,ctr+d结束创建输入

将文件1和2的内容加上行号输出到文件3  cat –b filename1 filename2 >> filename3

echo"test" | cat - file.txt testfile.txt拼接,test并未写入file.txt

cat file | tr –s‘\n’ 压缩空白行

12.tr

用于删除或者替换文件中的字符

13.file

file filename 得到文件类型

14.find

在文件目录中查找符合条件的文件。

find dir –name “ ” –print 在某个目录下查找名称是什么的字符串并打印到屏幕。.表示当前目录,~表示根目录。find ./database1 -name "[a-z]*" -print

find . -name filename -print

15.tee

将数据输出到屏幕或文件

some command | tee outfile。经常和cat结合使用。

16.basename

返回不包含路径的文件名

basename file

17.dirname

返回不包含文件名的路径

18.uniq

sort filename | uniq 删除文本文件中重复出现的行列

19.head

head file 打印文本文件开头几行

20.tail

tail file 打印文本文件末尾几行

21.sed

基本查找替换命令,将标准输入读入文本,并将结果输出到标准输出。

22.awk

从文本文件中提取字段

23.tar

文件压缩解压

0 0
原创粉丝点击