Linux_常用命令
Linux文件系统的目录树结构:【Linux世界里一切皆文件】:说白了,就是文件和文件夹(目录)之间的操作。
普通用户kkb所有文件及文件夹,其实都位于root用户的 /home/kkb/ 目录下。
root用户的根目录是 /root/ 目录下。
作用:查看当前工作路径
2. cd命令
作用:切换到目标目录
eg:切换到software目录
3. ls命令
作用:查看目录
作用:创建目录(文件夹)。mkdir 是“make directory” 的缩写词。
eg:在当前目录下创建一个目录t0
eg:同时创建多个目录t1 t2
eg:创建的目录包含子目录(需要使用 -p 参数)
创建名为 t3 的目录,在它的目录下包含有子目录file_build和date_build。
mkdir -p t5/file_build t5/date_build |
5. touch命令
作用:创建一个空的文件
eg:创建文件test1
drwxr形式的:文件夹。-rw-形式的:文件
可使用 vi 命令,来对空文件进行编辑,后面会介绍此命令。
6. cat命令
作用:查看文件内容(打开文件)
7. rm命令
作用:删除文件、目录(文件夹)
-r :向下递归,不管有多少级目录,一并删除
-f :直接强行删除,不作任何提示的意思
eg:删除文件夹(将会删除 /var/log/httpd/access 目录以及其下所有文件、文件夹)【推荐使用 -rf 】
rm -rf /var/log/httpd/access |
eg:删除文件(将会强制删除/var/log/httpd/access.log这个文件)
rm -f /var/log/httpd/access.log |
eg:刪除除了要保留的txt文件以外的文件
(1)删除除了1.txt以外的其他文件:
(2)如果是多个要排除的,可以这样:
(3)或者也可以这样,删除除了txt以外的文件:
8. cp命令
作用:拷贝文件或文件夹
eg:将test1文件copy到t3目录下
9. mv命令
作用:
(1). 重命名文件或目录
(2). 剪切文件或目录
eg:
(1). 将test1文件改名为test2
(2). 将test2剪切到t3目录下
10. scp命令
作用:将本机的文件或目录,远程上传/Copy到另一台机器上。【这里涉及到目录就要加:-r】
eg:上传/Copy文件
[kkb@slave01 ~]$ scp test2 kkb@slave02:/home/kkb |
eg:上传/Copy文件夹(目录)
[kkb@slave01 ~]$ scp -r test2 kkb@slave02:/home/kkb |
eg:把另一台机器上的文件或目录远程下载/Copy到本机上(逆向思维)【命令最后要有:点】
[kkb@slave01 ~]$ scp kkb@slave02:/home/kkb/words . |
对文件夹的下载操作,只需要在命令中多加一个 -r
[kkb@slave01 ~]$ scp -r kkb@slave02:/home/kkb/words . |
11. vi(vim)命令
作用:
(1)当针对存在的文件/文件夹时,vi(vim)命令充当进入编辑的命令
(2)当针对不存在的文件时,vi(vim)命令充当创建文件的命令,但创建的文件一定是有数据或内容的才能创建成功
命令模式:(文件只能看,不能编辑)
保存退出:wq
不保存强制退出:q!
退出:q
插入模式:(可以编辑文件)
按 a 或 i ,可以进入插入模式,然后对文档编辑
编辑文件的整个流程:
命令模式:
插入模式:(按 a 或 i 进入)
插入模式可以对文档进行自定义随意的编辑。
按Esc键后,输入冒号:wq,回车,则代表保存并退出文件
12. chown命令
作用:修改文件(或目录)的所有者,除此之外,这个命令也可以修改文件(或目录)的所属组。
当只需要修改所有者时,可使用如下 chown 命令的基本格式:【-R(注意大写)选项表示连同子目录中的所有文件,都更改所有者。】
如果需要同时更改所有者和所属组,chown 命令的基本格式为:
注意,在 chown 命令中,所有者和所属组中间也可以使用点(.),但会产生一个问题,如果用户在设定账号时加入了小数点(例如 zhangsan.temp),就会造成系统误判。因此,建议大家使用冒号连接所有者和所属组。
另外需要注意的一点是,使用 chown 命令修改文件或目录的所有者(或所属者)时,要保证使用者用户(或用户组)存在,否则该命令无法正确执行,会提示 "invalid user" 或者 "invaild group"。
eg:其实,修改文件的所有者,更多时候是为了得到更高的权限,举一个实例:
[root@slave01 ~]# touch file #由root用户创建file文件 [root@slave01 ~]# ll file #查看file文件的详细信息 -rw-r--r--. 1 root root 0 Apr 17 05:12 file # 表明所有者是root(前),所属者是root(后),普通用户kkb对这个文件拥有只读权限 [root@slave01 ~]# chown kkb file #修改文件的所有者为kkb [root@slave01 ~]# ll file #查看file文件的详细信息 -rw-r--r--. 1 kkb root 0 Apr 17 05:12 file # 表明所有者是kkb(前),所属者是root(后),普通用户kkb对这个文件拥有读、写权限了 |
eg:Linux 系统中,用户等级权限的划分是非常清楚的,root 用户拥有最高权限,可以修改任何文件的权限,而普通用户只能修改自己文件的权限(所有者是自己的文件),例如:
[root@slave01 ~]# cd /home/kkb #进入kkb普通用户的家home目录下 [root@slave01 kkb]# touch test #由root用户新建文件test [root@slave01 kkb]# ls #查看kkb普通用户的家home目录的简要信息 Desktop Documents Downloads Music Pictures Public t3 Templates test test2 test3 Videos words [root@slave01 kkb]# ll test #查看test文件的详细信息 -rw-r--r--. 1 root root 0 Aug 11 15:08 test # 文件的所有者为(root)[root@slave01 kkb]# su - kkb #切到kkb普通用户下,看可否不顾用户等级权限来进行操作? Last login: Sun Aug 11 14:58:21 CST 2019 on pts/0 [kkb@slave01 ~]$ chmod 755 test # 想对文件test进行755授权 chmod: changing permissions of ‘test’: Operation not permitted # 但由于文件test是root用户创建的,kkb普通用户不能对其授权 [kkb@slave01 ~]$ exit # 切回root用户 logout [root@slave01 kkb]# chown kkb test # 修改文件的所有者(root---kkb) [root@slave01 kkb]# ll test #查看test文件的详细信息 -rw-r--r--. 1 kkb root 0 Aug 11 15:08 test # 文件的所有者改为(kkb) [root@slave01 kkb]# su - kkb # 切到kkb普通用户下,看这回可否来进行操作? Last login: Sun Aug 11 15:08:52 CST 2019 on pts/0 [kkb@slave01 ~]$ chmod 755 test # 想对文件test进行755授权,kkb用户由于是test文件的所有者,所以这回可以 [kkb@slave01 ~]$ ll test #查看test文件的详细信息 -rwxr-xr-x. 1 kkb root 0 Aug 11 15:08 test # 文件授权成功(-rw-r--r-- 变为 -rwxr-xr-x) |
eg:修改文件的所属者,举一个实例:
13. chmod命令
作用:更改文件或者目录的权限
【-R(注意大写)选项表示连同子目录中的所有文件,都更改所有者。】
- 说明 : Linux的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以控制档案如何被他人所调用。
root:系统特权用户类,既 UID = 0 的用户
owner:拥有文件的用户
group:拥有文件的用户组
other:不属于上面 3 类的所有其他用户
- chmod命令:可以用数字来表示权限如:chmod 755 file
- 语法为:chmod abc file
- 其中a,b,c各为一个数字,分别表示Owner、Group、及Other的权限。 每个abc都由rwx-四个元素组成。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
r=4, w=2, x=1, -=0
若要 rwx 属性则4+2+1=7;
若要 rw- 属性则4+2=6;
若要 r-x 属性则4+1=5;
若要 r-- 属性则4;
若要 -wx 属性则3;
若要 -w- 属性则2;
若要 --x 属性则1;
- chmod a=rwx file 和 chmod 777 file 效果相同 chmod ug=rwx,o=x file 和 chmod 771 file 效果相同
若用chmod 4755 filename可使此程序具有root的权限
PS:此处chmod 4755 filename中的第一位数4表示高位特殊权限
主要有三种高位特殊权限 S :SUID SGID SBIT