Linux基本命令详解Word文档下载推荐.docx
《Linux基本命令详解Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Linux基本命令详解Word文档下载推荐.docx(21页珍藏版)》请在冰豆网上搜索。
.
anaconda-ks.cfg
.bash_logout
.bashrc
.tcshrc
..
.bash_history
.bash_profile
.cshrc
参数-a的功能:
显示隐含文件。
若文件名以“.”开头,则认为是隐含的,进而普通的ls命令不显示以“.”开头的文件;
所以要完全显示某目录下的文件清单,必须加上-a参数才行。
(3)ls示例三——长格式输出
[root@yxy~]#ls-l
总用量24
-rw-------.1rootroot
111611月1318:
15anaconda-ks.cfg
-rw-r--r--.1rootroot1252611月1318:
15install.log
-rw-r--r--.1rootroot
348211月1318:
14install.log.syslog
参数-l的功能是:
以长格式列表输出指定目录中的文件清单
以上述输出中文件install.log为例
解释长格式输出的内容如下:
文件权限
连接数
属主
属组
大小
日期
时间
文件名
-rw-r--r--.
1
root
12526
11月1318:
Linux文件有三种典型的权限,即r读权限、w写权限和x执行权限。
在长格式输出中在文件类型的后面有9列权限位,实际上这是针对不同用户而设定的,如下所示。
属主的权限
属组的权限
其他用户的权限
rwx
r-x
(4)ls示例四——递归显示
[root@yxy~]#ls-R
.:
参数-R的功能是:
递归显示指定目录下的文件清单,
即会显示指定目录分支内各子目录中的文件清单。
2.
pwd命令
示例:
pwd
[root@yxy~]#pwd
/root
显示当前目录。
3.
mkdir命令
(1)mkdir示例一
[root@yxy~]#mkdirabc
在当前目录下创建目录abc
(2)mkdir示例二——创建多级目录
[root@yxy~]#mkdir-pa/b/c
[root@yxy~]#ls-Ra
a:
b
a/b:
c
a/b/c:
参数-p功能是如果要创建的目录的父目录不存在,则先创建其父目录,再创建该目录;
如果指定的目录存在,则不影响原目录,也不会报错。
在本示例中会连续创建a目录、a/b目录、a/b/c目录。
4.cd命令
(1)cd示例一——切换工作目录
[root@yxy~]#cd/var
[root@yxyvar]#pwd
/var
将当前的工作目录切换为/var
(2)cd示例二——切换到当前用户的主目录
[root@yxyvar]#cd
不带参数的cd命令直接将当前的工作目录切换为该用户的主目录。
主目录又称为家目录,在RHEL中是在创建用户时,自动在/home下为用户创建一个用其用户名同名的目录,并将该目录的所有权划归给该用户所有。
注意:
字符“~”代表(当前)用户的主目录。
5.touch命令
(1)touch示例一——创建空文件
[root@yxy~]#touchmyfile
[root@yxy~]#ls-lmyfile
-rw-r--r--.1rootroot011月1323:
48myfile
如果myfile不存在,则创建一个大小为0字节名为myfile的空文件。
(2)touch示例二——改变文件的最后修改时间
再执行一次touchmyfile
49myfile
如果myfile已存在,则将改变myfile的最后修改时间。
6.cp命令
(1)cp示例一——复制文件
[root@yxy~]#cp/etc/*
abc
将/etc/目录下的文件复制到目录abc中。
“*”是通配符,可以匹配多个字符;
“?
”只能匹配一个字符。
(2)cp示例二——复制目录
[root@yxy~]#cp
-R
/etc
abc
增加了参数-R,就能将目录/etc下面的所有子目录和文件都复制到目录abc中。
7.mv命令
(1)mv示例一——将文件移动到目录中
[root@yxy~]#mv
myfile
mydir1
如果mydir1存在且是个目录,则将文件myfile移动到目录mydir1中。
(2)mv示例二——文件改名
[root@yxy~]#mvmyfilemyfile2
将文件(或目录)myfile改名为myfile2。
8.
rmdir命令
[root@yxy~]#rmdir
删除指定的空目录。
9.
rm命令
(1)rm示例一——删除文件
[root@yxy~]#rm
php.ini
删除指定的文件php.ini。
(2)rm示例二——删除目录
-rf
参数-r是递归的意思,即可以删除非空目录;
参数-f是强制的意思。
10.
cat命令
(1)cat示例一——显示文件内容
[root@yxy~]#catmyfile
hello,world
显示指定文件myfile的内容。
(2)cat示例二——创建文件
[root@yxy~]#cat
>
myfile2
WelcometoLinuxWorld!
按ctrl+d结束输入
利用输出重定向符“>
”来创建简短的文本文件myfile2。
11
more和less命令
#more
/etc/httpd/conf/httpd.conf
分屏显示指定文件httpd.conf的内容,非常适合显示超过一屏的文本文件。
每按一下空格键,向后翻一屏;
每按一次回车键,向后翻一行。
less与more功能很相似,只不过less功能更强大,支持PageUp键向前翻屏,及PageDown向后翻屏。
12.
head命令
(1)head示例一——显示文件头10行内容
#head
默认显示指定文件的头10行的内容。
(2)head示例二——显示文件头n行内容
#head-n19/etc/httpd/conf/httpd.conf
参数-n设置显示指定行数,本例会显示文件的头19行的内容。
13.
tail命令
(1)tail示例一——显示文件最后10行内容
#tail
默认显示指定文件的末尾10行的内容。
(2)tail示例二——显示文件最后n行内容
-n12
参数-n设置显示指定行数;
本例会显示文件的末尾12行的内容。
二、用户、组管理命令
Linux采用组来组织和管理用户
在Linux中每个用户有唯一的用户标识符UID,该UID是一个无符号整数。
同时每个用户也必须至少属于一个组,也有组标识符GID。
其中UID与GID独立编号。
1.groupadd命令
(1)groupadd示例一——创建组账号
[root@yxy~]#groupadd
mygroup1
创建一个新组mygroup1,其GID号为已存在GID号的下一个顺序编号。
创建一个组的同时会在/etc/group文件中为该组增加相应的一行,用来记录该组的名称、GID号及成员等信息。
(2)groupadd示例二——创建组账号并设置其GID号
#groupadd
-g5000
mygroup2
创建一个新组mygroup2,并指定其GID号为5000,其中-g用来设置用户的主要组,每个用户都有一个主要组。
2.useradd命令
(1)useradd示例一——创建用户账号
[root@yxy~]#useradd
user1
创建一个用户user1,同时在/etc/passwd文件和/etc/shadow文件增加一行,并自动为用户创建相应的主目录:
/home/user1。
/etc/passwd文件记录了系统中每个用户的用户名、UID号、GID号、主目录、shell等信息。
用户的口令原来也存放在此文件中,现在为了保证安全采用了影子口令文件/etc/shadow来保存每个用户的口令。
(2)useradd示例二——创建用户账号并设置相应属性值
#useradd
-u600
-gmygroup1
-Gmygroup2
-d
/home/student1
s1
创建用户s1,其中参数
-u指定UID号为600;
-g指定用户的主要组为mygroup1;
-G指定用户的附加组为mygroup2,每个用户可以有多个附加组;
-d指定用户的主目录为/home/student1。
3.userdel命令
(1)userdel示例一——删除用户
[root@yxy~]#userdel
删除指定的用户user1。
(2)userdel示例二——删除用户的同时删除其主目录
-r
user2
删除指定的用户user2,同时删除其主目录。
4.groupdel命令
[root@yxy~]#groupdelmygroup2
删除指定的组
当某个组是某现有用户的主要组时,则不能被删除。
5.passwd命令
(1)passwd示例一——改变口令
[root@yxy~]#passwd
Changingpasswordforuseruser1.
Changingpasswordforuser1
(current)Unixpassword:
NewUnixpassword:
BADPASSWORD:
itistoosimplistic/systematic
istoosimilartotheoldone
RetypenewUnixpassword:
passwd:
allauthenticationtokensupdatedsuccessfully.
普通用户只可以修改自己的口令
(2)passwd示例二——禁止用户登录
[root@yxy~]#passwd
-l
Lockingpasswordforuseruser1.
Success
参数-l可以给指定的用户user1加锁,即禁止该用户登录。
(3)passwd示例三——恢复用户登录
–u
Unlockingpasswordforuseruser1.
Success.
参数-u可以给指定的用户user1解锁,即恢复该用户登录。
(4)passwd示例四——删除用户口令
Removingpasswordforuseruser1.
参数-d可以删除指定的用户user1口令,即以user1登录时无需口令。
6.usermod命令
#usermod
-u
601
-g501
将(已存在的)用户s1的UID号修改为601、主要组修改为501。
7.id命令
[root@yxy~]#id
uid=501(user1)gid=501(user1)groups=501(user1)
显示用户的UID、GID及所属的组信息。
三、文件属性操作命令
1.chown命令
(1)chown示例一——改变文件的属主
[root@yxy~]#chown
user1
hello.txt
将指定文件hello.txt的属主(所有者)改为user1。
(2)chown示例二——递归改变文件的属主
#chown
-R
mydir
参数-R,表示递归,即可以深入到指定目录中的每一层,将所有子目录和文件的属主(所有者)改为指定的用户;
本例中会将mydir目录中所有子目录和文件的属主设定为user1。
2.chgrp命令
(1)chgrp示例一——改变文件的属组
#chgrp
mygroup1
将指定文件hello.txt的属组改为mygroup1。
(2)chgrp示例二——递归改变文件的属组
参数-R,表示递归,即可以深入到指定目录中的每一层,将所有子目录和文件的属组改为指定的组;
本例中会将mydir目录中所有子目录和文件的属组设定为mygroup1。
3.chmod命令
(1)chmod示例一——字母方式
图中字母u针对属主、g针对属组、o针对其他用户、a针对所有用户;
=表示赋予(设置)指定权限,要注意它会覆盖原权限,+表示在原有权限的基础上增加指定权限,-表示在原有权限的基础上去掉指定权限;
r、w、x三种权限,既可以单独使用也可以组合使用
#chmod
u+x
host.conf
为文件host.conf的属主增加执行权限。
g-w,o=x
将文件host.conf的属组去掉写权限,同时将其他用户设置为只有执行权限,而文件属主的权限不变。
(2)chmod示例二——数字方式
chmod的数字使用方式,使用起来也是很方便的,关键是一个数制转换的问题。
这种方式是先将每个权限位化成二进制数,其中如果某权限位是“-”则用0来表示,否则用1来表示;
接着,将这9列权限分为三组(每三位一组),再将每组化成一个八进制数。
例如,某文件有如下权限rwxrw-r--,则转换为二进制数为111110100,再化为八进制数则为764;
反之,当看到八进制数764时也应该很快转化为相应权限。
764
将文件host.conf的权限设置为:
属主拥有全部权限;
属组拥有读写权限;
其他用户拥有只读权限。
四、i节点及其相关命令
(1)ln命令示例一——建立硬连接
[root@yxy~]#ln
myfile
myfile.hlink
为文件myfile创建名为myfile.hlink的硬连接。
[root@yxy~]#ls
-il
180590-rw-rw-r--
2
user1user1
12Aug1712:
14myfile
14myfile.hlink
通过ls
–il命令可以看出myfile与myfile.hlink的i节点号(最左面的数)是一样的,即硬连接与原文件共用同一个i节点,请注意两个文件的连接数(位于长格式列表中权限位与属主之间的数)都增加了1变成2了。
(2)ln命令示例二——建立符号连接
-s
myfile.slink
为文件myfile创建名为myfile.slink的符号连接。
-li
180606lrwxrwxrwx
1
6Aug2106:
21myfile.slink->
myfile
硬链接若一个inode号对应多个文件名时,则称之为硬链接。
硬链接具有以下几个特性:
文件拥有相同的inode号和数据块;
只能对已存在的文件创建硬链接;
不能跨越文件系统创建硬链接;
不能堆目录创建硬链接;
删除一个硬链接文件不影响其他相同inode号的文件。
软链接在Linux中,若文件的数据块中存放的内容是另一文件的路径名,则称之为软连接。
软链接类似于Windows系统下的快捷方式。
软连接有自己的inode号和用户数据块。
为此,软链接避免了硬链接的诸多限制,软链接主要具有以下特点:
软链接有自己的文件属性及权限等;
可以对不存在的文件或目录创建软链接;
软链接可以跨越文件系统创建;
删除软链接时不会影响被指向的文件;
若原文件被删除时,相关软链接文件被称为死链接(当该路路劲的文件重新创建时,死链接可以恢复正常)。
五、查找命令
1.which命令
[root@yxy~]#whichcp
/bin/cp
[root@yxy~]#whichupdatedb
/usr/bin/updatedb
显示命令的绝对路径。
该命令只能在命令搜索路径指定的目录中去查找命令或程序。
2.whereis命令
[root@yxy~]#whereisln
ln:
/bin/ln/usr/share/man/man1/ln.1.gz/usr/share/man/man1p/ln.1p.gz
查询指定命令所在目录以及帮助文档所在目录。
3.find命令
(1)find示例一——按文件名查找
#find
/
-name
"
dhcpd*"
参数-name指明按文件名进行查找,即从/目录开始查找以dhcpd开头的所有文件。
(2)find示例二——按文件大小查找
[root@yxy~]#find
/etc
-size
8
从/etc下开始查找大小为8块的文件,此处默认512字节为1块。
若认为块大小为1k,则应写为8k。
其它可以使用的单位有c(字节)、w(双字节)、M(兆字节)和G(吉字节)。
(3)find示例三——按文件类型查找
/var
-typed
-print
从/var目录下开始查找类型为目录的文件,其中参数-print是显示到屏幕上的意思,经常省略。
(4)find示例四——按文件的修改时间查找
.
-cmin-5
从当前目录下查找5分钟之内修改过的文件。
如果把“-5”改为“+5”,则表示查找5分钟以前修改过的文件。
不带“+”或“-”,则认为整5分钟。
如果把时间单位改为天,则使用参数“-ctime”,请看示例:
-ctime-5
(5)find示例五——按文件的权限查找
[root@yxy~]#find
mytmp
-perm
755
查找mytmp目录下的权限恰为755的文件。
+755
查找mytmp目录下的满足755中任何一种权限的文件,即符合任何一个指定的权限位即可。
-755
查找mytmp目录下的权限至少满足755的文件,即指定的所有权限位必须符合才算满足查询条件。
六、文件内容操作命令
1.grep命令
(1)grep示例一——在指定的文件中查找包含特定的字符串的行
[root@yxy~]#grep
bind"
在