Linux系统基础学习之shell及常用命令(三)

时间:2022-12-10 15:01:08

切换工作目录和显示当前路径命令:

cd<dirName>


cd /usr/bin
cd ~
cd ../..
• 显示当前路径命令pwd
pwd


查看目录内容命令ls:

ls<选项>[name]......

• 主要选项

-a, 列出当前目录下所有文件和文件夹(包括隐藏的 显示隐藏的可以通过CTRL+H)

-l,  使用详细格式列表

-r,  反向排序

-t,  用文件和目录的更改时间排序(最近更改的在前)


-A,   显示所有文件和目录,但不显示现行目录和上层目录

-F,    在执行文件,目录,Socket,符号连接,管道名称后面,各自加上"*","/","=","@","|"号

-R    递归处理,将指定目录下的所有文件及子目录一并处理



查找文件或者目录命令 find:

find <path...>[expression]


expression中可使用的需要选项


例如:find /home/administrator -name a.img  查找/home/administrator 目录下名字为a.img的文件或文件夹(若不存在则不返回信息)


-type:查找某一类型文档

b:块设备文档
d:目录
c:字符设备文档
p:管道文档
l:符号链接文档
f:普通文档


-size     n[c]   查长度为n块[或n字节]的文档


-cmin -n    表示查找:从现在算起,n分钟之内文件状态被修改过( last changed)的文件或者目录



文件定位命令 locate
:

locate命令其实是“find -name”的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库


locate <选项> [search string]

主要选项


-U  [dir]     指定资料库的路径

-e  [dir1, dir2,...]     将排除在寻找的范围之外

-l  [level]     如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到 的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的权限资料

-q     安静模式,不会显示任何错误讯息

-n     至多显示 n个输出(例如:locate -n 2 filename ,只显示2个有filename有关的输出)

-r regexp    显示匹配regexp文件或文件夹


文件内容检索命令grep


grep [选项] <string> <file>...

其中,string是准备检索的字符串或模式,file是准备从中检索的文件。
• 常用选项

 -i :在进行比较时忽略大小写

 -n:在输出结果中给出行号


 例如:grep Smith phonebook



链接命令ln


ln [选项] <source> <dest>

例如:

ln -s yy zz
ln yy xx



创建文件、改变文件或目录时间的命令touch

改变文件或目录时间的命令touch
touch [选项] <file1> [file2 ...]


主要选项

-a,    或--time=atime或--time=access或--time=use  只更改存取时间

-m,   或--time=mtime或--time=modify  只更改变动时间

-c    或--no-create  不建立任何文档

-r<参考文件或目录>   把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同

-d<datestring>   使用指定的日期时间,而非现在的时间

-t<stamp>    使用指定的日期时间,而非现在的时间