三. 文件操作:新增,删除,修改,查找,文件属性,文件内容查看,文件辅助命令,打包(解压缩),文件名注意事项。
新增:单文件,目录
单文件:1.touch :创建空文件 比如:touch hello.html
2.vi :文本编辑器 比如:vi book.doc
进入文本编辑后: i:插入insert; esc:退出,停止写;冒号:命令行模式;
q:退出编辑; w:保存 wq: 保存后退出
目录:mkdir: 创建目录
mkdir测试题; 6.创建一个空目录
mkdir dir
7.递归创建多个目录
mkdir -p a/b/c/d
8.创建权限为777的目录
mkdir -m 777 mode
9.创建新目录并显示创建信息
mkdir -v dir
删除:rmdir,rm
rmdir:删除空目录
rm:默认不会删目录。 rm test.php :删除文件需要确认,rm -f test.php:删除文件不确认,
rm -rfv ./test:删除当前test目录,并显示详细过程。rm -rf:强制删除目录
10.删除文件file,系统会先询问是否删除
rm file
11.强行删除file,系统不再提示
rm -f file
12.将test1子目录及子目录中所有档案删除
rm -rf test1/*
修改:mv,touch
mv:重命名或者移动文件 比如:mv login.html home.html 或者 mv home.html demo/
从demo目录移到root目录:root目录下:mv demo/home.html home.html
touch:修改文件的时间戳 比如:touch -a(-m)(-c) -t 201705011220.00 install.log
mv测试题
14.文件改名
mv oldName newName
15.将文件log1.txt,log2.txt,log3.txt移动到目录test3中
mv log[123].txt test3/
16.将文件file1改名为file2,如果file2已经存在,则询问是否覆盖
mv file1 file2
17.将文件file1改名为file2,即使file2存在,也是直接覆盖掉
mv -f file1 file2
18.移动当前文件夹下的所有文件到上一级目录
mv ./* ../
touch测试题
21.更新log.log的时间和log2012.log时间戳相同
touch -r log2012.log log.log
22.设定文件的时间戳
touch -t yyyymmddhhMM.ss file
查找:locate,which,whereis,find
locate:从系统文件名数据库中查找,如创建完新文件后用updatedb更新后再查找 用yum -y install mlocate 安装。
比如:locate "`pwd`/install"或者 locate ~/install 当前目录下以instal开头的文件
locate -i "`pwd`/install或者locate -i ~/install 当前目录下以install开头的文件,不区分大小写。
其中双引号加与不加效果一样
which:可执行的命令所在目录,查找的位置是¥PYTH中的目录
whereis:可执行的命令所在目录,帮助文件,配置文件等
find:按照某种方法进行磁盘查找
29.locate查找当前目录下以install开头的文件
locate ~/install
30.locate查找当前目录下以install开头的文件,不区分大小写
locate -i ~/install
31.which查找find命令所在目录
which find
32.whereis定位帮助命令find的位置
whereis find
文件属性:stat,file
stat:文件的详细属性 比如:stat abc.ph
file:文件类型 比如:file *查看当前目录下的的所有文件类型,file abc.sh查看单个文件的文件类型。
23.查看当前目录下的所有文件类型
file ./*
24.查看单个文件的文件类型
file fileName
文件内容查看:cat,head,tail,more,less,grep
cat:读文件内容 比如:cat test 普通输出;cat -n test开头显示行号;cat file1 file2>file合并两个文件为一;
cat -ns test 去空行加行号。
cut:在文件的每一行中提取片段。cat -d:做字段分隔符,cat -f:输出这些字段。
head:读文件的头n行 比如:head /etc/doc默认显示前10行;head -k /etc/doc显示开头前k行;
head -n 5/etc/doc显示前5行head -n -5除最后5行 外,其余全部显示;
head -c 100 /etc/doc显示前100个字符;head -c -100/etc/doc除最
后100个字符以外其余全部显示。
tail: 读文件的尾n行 比如:tail txt默认显示后10行;其他同head相似;tail -n +k txt显示第k行。
more:分页读取(有百分比) 比如:more text.php
less:分页读取(无百分比) 同上
grep:文件内容搜索????
文件辅助命令:ls,ll,cd,pwd,cp,ln
ls:查看目录内容 ls -a显示隐藏文件 ls -l 不隐藏的目录
ll:ls -a -l的缩写,显示详细信息
cd:切换目录 比如:cd /home/切换到home目录;cd /root/返回到home前的目录;cd ..
然后cd ./root/var,即切换到var目录, cd ~返回根目录
pwd:显示当前所在目录
cp:文件拷贝 比如:cp test.rb{,.bak}备份test.rb,并在尾部加上.bak的后缀
cp -p test.rb /home/text/将test.rb copy 到test目录,并且保留原文件的属性
cp -r dir/ /home/text/ 将dir 目录copy的test目录
cp -fr dir/* /home/text/将dir下的所有文件强制copy到text目录下
ln:创建链接文件 包括{硬链接文件(源文件的副本),符号链接文件(快捷方式)}
ln -s 1.txt (快捷方式名) 或ln -s 1.txt (目录名) 是软连接
ln 1.txt (目录名)/(快捷方式名) 是硬链接
cp:测试题
19.复制单个文件到目标目录,文件在目标文件中不存在
cp file2 dir/
20.复制单个文件到目标目录,文件在目标文件中存在
cp file2 dir/
ln测试题
硬链接: [root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
[root@rekfan.com test]# ln file2 file2hand
[root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
软连接: [root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
[root@rekfan.com test]# ln -s file1 file1soft
[root@rekfan.com test]# ls -il
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491140 lrwxrwxrwx 1 root root 5 07-14 14:24 file1soft -> file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
pwd cd ls ll 的测试题:
1.用 pwd 命令查看默认工作目录的完整路径
pwd
2.用 pwd 命令查看链接文件的目录,和链接指向的实际目录
pwd
pwd -P
3.从当前目录跳至根目录(使用相对和绝对目录跳转)
cd /
cd ../../
4.列出/home/peidachang文件夹下的所有文件和目录的详细资料
ls -al /home/peidachang
ll -a /home/peidachang
打包(解压缩):gzip, bzip2,tar
tar -c:打包 tar -f:打包的包名 tar -z:压缩成.gz结尾的压缩包 tar -j :压缩成.bz2结尾的压缩包
tar -x:解压 打包压缩:tar -czf backup .tar .gz./* 解压:tar -xzf bavkup .tar .gz
50.将ar_test文件打包并且压缩,.gz
tar -czf ar_test.tar.gz ar_test
51.查看ar_test.tar.gz里面的文件信息
tar -tf ar_test.tar.gz
52.将ar_test文件打包并且压缩,.bz2
tar -cjf ar_test.tar.bz2 ar_test
53.将当前目录所有.jpg的文件打成一个名为all.tar的包
tar -cf all.tar ./*.jpg
54.将所有.gif的文件增加到all.tar的包里面去
tar -rf all.tar ./*.gif
55.更新原来tar包all.tar中logo.gif文件
tar -uf all.tar ./logo.gif
56.解出all.tar包中所有文件
tar -xf all.tar
文件名注意事项: 1.点:以.开头的文件是隐藏文件
2.文件名的大小写是敏感的
3.文件名不能包含特殊字符……&¥@¥
4.文件名通配符*?[][^]
*:任意字符
?:任意单个字符 比如:file[]
[]:匹配[]中的任意一个字符 比如:file[0-9]
[^]:匹配除[^]之外的任意字符 比如:file[^0-9]
5.文件类型 1.普通文件 -(f); 2.目录:d; 3.符号链接:l; 4.字符设备:c; 5.块设备:b;
6.套接字:s。