Linux常用命令_文件管理

来源:互联网 发布:java初级程序员简历 编辑:程序博客网 时间:2024/05/16 14:58

文件处理命令

0.Linux目录结构
/ 根目录
bin //系统可执行程序,如命令
boot //内核和启动程序,所有和启动相关的文件都保存在这里
grub //引导器相关文件
dev //设备文件
etc //系统软件的启动和配置文件,系统在启动过程中需要读取的文件都在这个目录。如LILO参数、用
户账户和密码。
home //用户的主目录。下面是自己定义的用户名的文件夹
lib //系统程序库文件,这个目录里存放着系统最基本的动态链接共享库,类似于Windows下的system32
目录,几乎所有的应用程序都需要用到这些共享库。
media //挂载媒体设备,如光驱、U盘等
mnt //目录是让用户临时挂载别的文件系统,如挂载Windows下的某个分区,ubuntu默认还是挂载在/media
目录。
opt //可选的应用软件包(很少使用)
proc //这个目录是系统内存的映射,我们可以直接访问这个目录来获取系统信息。也就是说,这个目录的内容不在硬盘上而是在内存里。
sbin //管理员系统程序
selinux
srv
sys //udev用到的设备目录树,/sys反映你机器当前所接的设备
tmp //临时文件夹
usr //这是个最庞大的目录,我们要用到的很多应用程序和文件几乎都存放在这个目录下。
bin // 应用程序
game //游戏程序
include
lib //应用程序的库文件
lib64
local //包含用户程序等
sbin //管理员应用程序
1.显示目录文件:ls
语法

ls [-ald] [文件或目录]

常用选项:
-a 显示所有文件,包括隐藏文件
-l 详细信息显示
-d 查看目录属性
-R 连同子目录中的内容一起列出

用ls -l命令显示的信息中,开头是由10个字符构成的字符串,其中第一个字符表示文
件类型,它可以是下述类型之一:

- 普通文件d 目录l 符号链接b 块设备文件c 字符设备文件s socket文件,网络套接字p 管道

后面的9个字符表示文件的访问权限,分为3组,每组3位。第一组表示文件属主的权
限,第二组表示同组用户的权限,第三组表示其他用户的权限。每一组的三个字符分别表示
对文件的读、写和执行权限。各权限如下所示:

r 读w 写x 可执行。对于目录,表示进入权限。s 当文件被执行时,把该文件的UID或GID赋予执行进程的UID(用户ID)或GID(组ID)。t 设置标志位(sticky bit)。如果是有sticky bit的目录,在该目录下任何用户只要有适当的权限即可创建文件,但文件只能被超级用户、目录拥有者或文件属主删除。如果是有sticky bit的可执行文件,在该文件执行后,指向其正文段的指针仍留在内存。这样再次执行它时,系统就能更快地装入该文件。- 没有相应位置的权限。

访问权限后面的数字表示与该文件共享inode的文件总数,即硬链接数

2.切换目录

语法

cd [目录]

3.显示当前所在的工作目录:pwd
这里写图片描述
4.创建空文件:touch
语法

touch [文件名]

5.创建新目录:mkdir
语法

mkdir [目录名]

6.拷贝文件cp

cp  [源文件或目录] [目的目录]

选项
-R 复制目录下所有文件及子文件

实例

cp file1 file2 dir1#将文件file1、file2复制到目录dir1cp -R dir1 dir2#将dir1下的所有文件及子目录复制到dir2

7.移动文件、更名:mv
语法

mv [源文件或目录] [目的目录]

实例

mv file1 file3#将当前目录下文件file1更名为file3mv file2 dir2#将文件file2移动到目录dir2下

8.删除文件rm
语法

rm -r [文件或目录]

选项
-r 删除非空目录
-f 强行删除

实例

rm file3删除文件file3$ rm -r dir1删除目录dir1

9.显示文件内容:cat
语法:

cat [文件名]

10.分页显示文件内容:more
语法:

more [文件名]

(空格) 或f ——显示下一页
(Enter)——显示下一行
q或Q——退出
11.查看文件的前几行:head
语法:

head -num [文件名]

12.查看文件的后几行:tail
语法

tail -num [文件名]

选项:
-f——动态显示文件内容
13.产生链接文件:ln

语法:

ln [源文件] [目标文件]

选项:
-s创建软连接

实例

ln -s /etc/issue /issue.soft创建文件/etc/issue的软链接/issue.soft ln /etc/issue /issue.hard创建文件/etc/issue的硬链接/issue.hard

权限管理

1.改变文件或目录权限:chmod
语法:

chmod [{ugo}{+-=}{rwx}] [文件或目录]      [mode=421 ] [文件或目录]

实例

chmod g+w file1赋予文件file1所属组写权限chmod 777 dir1设定目录dir1为所有用户具有全部权限

文件目录权限

代表字符 权限 对文件的含义 对目录的含义 r 读 可以查看文件内容 可以列出文件的内容 w 写 可以修改文件内容 可以在目录中创建、删除文件 x 执行 执行权限 可以执行文件

2.改变文件或目录的所有者:chown
语法:

chown [用户] [文件或目录]

3.改变文件或目录的所属组
语法

chgrp [用户组] [文件或目录]

4.显示、设置文件的缺省权限
语法:

umask [-S] 权限值

选项
-S 以rwx形式显示新建文件或目录缺省权限

文件搜索命令

1.显示系统命令所在目录:which
语法:

which [命令名称]

2.查找文件或目录:find
语法:

find [搜索路径] [搜寻关键字]

实例:

find /etc -name init在目录/etc中查找文件initfind / -size +204800在根目录下查找大于100MB的文件find / -user sam在根目录下查找所有者为sam的文件find /etc -ctime -1在/etc下查找24小时内被修改过属性的文件和目录find /etc -size +163840 -a -size -204800在/etc下查找大于80MB小于100MB的文件find /etc -name inittab -exec ls -l {} \;在/etc下查找inittab文件并显示其详细信息

3.寻找文件或目录:locate
语法:

locate [搜索关键字]

4.在文件中搜寻字串匹配的行并输出:grep
语法:

grep [指定字串] [源文件]

实例:

grep ftp /etc/services

压缩解压缩命令

1.压缩文件:gzip
语法:

gzip 选项 [文件]

压缩后文件格式:.gz
2.解压缩.gz的压缩文件:gunzip
语法:

gunzip 选项 [压缩文件]

实例:

gunzip file1.gz

3.打包目录 :tar
语法:

tar 选项[cvf] [目录]

选项
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩

压缩后文件格式:.tar.gz

实例

tar -zcvf dir1.tar.gz dir1将目录dir1压缩成一个打包并压缩的文件

4.解压命令 :tar
选项
-x 解包.tar文件
-v 显示详细信息
-f 指定解压文件
-z 解压缩

实例:

tar -zxvf dir1.tar.gz

shell技巧

1.命令别名
命令别名定义:
范例:

alias copy=cpalias xrm= “rm -r ”

查看别名信息:

alias

删除别名:

unalias copy

2.输入/输出重定向

>或>> 输出重定向

范例:

ls -l /tmp > /tmp.msgdate >> /tmp.msg

< 输入重定向
范例:

wall < /etc/motd

2> 错误输出重定向
范例:

cp -R /usr /backup/usr.bak 2> /bak.error

3.管道

将一个命令的输出传送给另一个命令,作为另一个命令的输入

语法:

命令1|命令2|命令3......|命令n

范例:

ls -l /etc | morels -l /etc | grep initls -l /etc | grep init | wc -l

4.命令连接符
;
用;间隔的各命令按顺序依次执行。
&&
前后命令的执行存在逻辑与关系,只有&&前面的命令执行成功后,它后面的命令才被执行。
||
前后命令的执行存在逻辑或关系,只有||前面的命令执行失败后,它后面的命令才被执行。
5.命令替换符
将一个命令的输出作为另一个命令的参数。
语法:

命令1 `命令2`

范例:

ls -l `which touch`
0 0