文件操作命令
文件类型:
f:普通文件
d:目录文件
l:符号链接
p:管道
s:套接文件
b:区块装置文件
-
touch:创建普通文件
当文件已经存在时,touch命令改变该文件的创建时间 -
mkdir:创建目录文件
-
rmdir:删除空目录,不能删除非空目录
rmdir -rf name:强制删除非空目录 -
cp:拷贝文件,加“-r”拷贝目录文件
cp 旧文件名 新文件名 -
rm:删除文件
删除目录文件加“-r”
强制删除文件(没有提示)加“-f”
删除文件时有提示加“-i”
- mv:
1)重命名:mv 旧文件名 新文件名
2)移动文件位置:mv 文件名位置 - chmod:修改文件权限
u:自己 ;g:同组人 ;o:其他人
读r:4, 写w:2, 执行x:1, 无权限-:0
chmod u+x a.sh
chmod 764 a.c : 对于a.c文件,自己的权限是读写执行,同组人是读和写,其他人是读
- more:分屏显示 more filename
按空格显示下一屏内容
按enter显示下一行内容
按B显示上一屏内容
按Q退出more命令
- less :查看文件内容 但是文件内容不会显示到界面上
- tail:显示 文件后n行内容
head:显示 文件前n行内容
tail -2 a.txt : 显示a.txt的最后两行
head -2 a.txt : 显示a.txt的前面两行
- cat:
1.查看文件内容 cat test.txt
2.合并文件 cat a.txt b.txt > c.txt
3.向文件中写数据 cat > a.txt
ctrl+d 结束输入
- find:搜索文件
find /home -name “*.c”: 查找home目录下所有.c文件
find . -type f:将当前目录及其子目录的所有普通文件列出
-type c:文件类型是c的文件
-size n:文件大小是n单位,b表示512位元组的区块,c表示字元数,k表示kilo bytes,
- grep:过滤出包含指定字符串的行
grep “hello” test.txt : 找出包含hello的行
- wc:统计文件单词个数(-w),字符个数(-c),行数(-l)
wc -w test.txt 统计文件单词数
wc -l test.txt 统计文件行数
wc -c test.txt 统计字符个数
- sed:编辑一个或多个文件
利用脚本来处理文本文件,sed 可依照脚本的指令来处理、编辑文本文件。
Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等
-
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
-
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
-
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
-
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
-
p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
-
s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦
sed -e 4a\newLine testfile //testfile文件的第四行后添加一行,并将结果输出到标准输出
sed -e '4 a newline\nnewline2' testfile //4 行之后追加 2 行:
//追加一行的话前后都不需要添加换行符 \n,只有追加多行时在行与行之间才需要添加换行符
[root@www ~]# nl /etc/passwd | sed '2,5d' //将 /etc/passwd 的内容列出并且列印行号,同时,请将第 2~5 行删除
nl /etc/passwd | sed '2d' //只删除第二行
nl /etc/