本文章主要涉及以下工作:
(1)详细讲述了Ubantu的常用命令,包括文件操作、目录操作、归档压缩、软链接操作、用户操作、用户与组的操作以及进程操作。
(2)对应不同的命令,提供有不同的示例,并对相关命令的参数进行了解释。
如果文章有用,欢迎各位→点赞👏 + 收藏💞 + 留言🔔 😁🌹🌹
1. 文件操作
(1) ls,即 list,列出目录下的所有项。
查看当前目录:ls
查看根目录:ls /
查看用户目录:ls /home/incalos/
查看指定的example目录:ls /home/incalos/example/
以详细的方式查看指定的example目录:ls -l /home/incalos/example/
其中,-a表示显示所有文件包括隐藏文件,在Linux中以.开头的文件为隐藏文件。-l表示详细列出目录下所有内容的详细信息,格式如表和图所示。
权限 | 子项数 | 属主 | 组名 | 文件大小 | 修改时间 | 文件名 |
---|---|---|---|---|---|---|
-rw-rw-r– | 1 | incalos | incalos | 6 | Jul 23 00:33 | 123 |
- 权限的第一个字符表示文件类型:d表示目录,l表示软链接,-表示文件。
- 权限剩余的九个字符分为三部分 自己|同组|别人 。例如 -rw-rw-r-- 的rw-表示自己,rw-表示同组,r–表示别人。
- 权权限剩余的九个字符,其中-r表示文件可读read,-w表示文件可写,-x表示文件可执行excute。
(2) chmod,即 change file mode,修改文件的访问权限。
其中,o表示别人other,a表示所有人all,u表示仅用户自己user,+w表示增加write权限,-r表示减去read权限等。
只有文件的属主owner或者root可以修改文件权限。
赋予1.txt文件别人能够修改的权限:chmod o+w 1.txt
给自己和本组的权限增加可修改(省略写法):chmod +w 1.txt
(3) chown,即 change owner,修改文件的属主。
其中,-R表示递归。
一般来说,每个用户只操作自己的用户和目录,所以chown并不常用。
将root用户的software目录交由incalos:chown -R incalos /opt/software/
2. 目录操作
(1) cd,即 change directory,切换目录。
切换到指定的example目录:cd /home/incalos/example/ 或者 cd ~/example/
切换到主目录:cd ~
切换到上级目录:cd ..
切换到当前example目录下的test目录:cd ./test/ 或者 cd test/
(2) mkdir,即 make directory,创建目录。
在当前目录下创建abc目录:mkdir abc
在当前目录下将路径的层次目录全部创建:mkdir abc/example/test
(3) rmdir,即 remove directory,删除空目录。
如果目录非空,则报错。
删除当前目录下的空目录test:rmdir test
(4) rm,即 remove,删除文件或目录。
其中,-r表示recursive,-f表示force。
删除当前目录下的example,内部的子目录以及文件一并删除:rm -rf example
(5) cp,即 copy,复制文件或者目录。
复制当前目录下的example目录,并命名为example2:cp -rf example example2
如果example2目录是存在的,则上述命令是将example目录复制进example2目录中。
(6) mv,即 move,移动文件或目录(重命名)。
重命名当前目录下的1.txt为2.txt:mv 1.txt 2.txt
将2.txt移动到example目录下:mv 2.txt example/
3. 归档压缩操作
(1) tar,即 tape archive,档案打包(根据参数不同可实现解包、压缩、解压缩)。
其中,-c表示create创建档案,-x表示extract解档操作,-v表示verbose显示详情,-f表示file,-z表示zip压缩,-C表示解压到制定目录下,默认是当前目录。
将example目录创建档案包:tar -cvf example.tar example/
多目录多文件打包:tar -cvf test.tar example/ 2.txt 1.jpeg
将a.tar解档到当前目录下:tar -xvf a.tar
将a.tar解档到outdir目录下:tar -xvf a.tar -C out/
将example目录创建档案包并压缩:tar -czvf example.tar.gz example/
多目录多文件打包并压缩:tar -czvf test.tar.gz example/ 2.txt 1.jpeg
将a.tar.gz解压到当前目录下:tar -xzvf a.tar.gz
将a.tar.gz解压到outdir目录下:tar -xzvf a.ta.gzr -C out/
4. 软链接操作
(1) ln,即 link,创建软链接。
其中,-s表示soft软链接。注意,如果不是在当前目录下创建软链接,两个路径都要是绝对路径。
将example目录在当前目录下创建软链接:ln -s example/ example
将example目录在桌面创建软链接:ln -s ~/example/ ~/Desktop/example
5. 用户操作
(1) useradd,表示添加用户。
其中,-m表示在/home目录下添加用户目录,-g表示在添加用户时同时将用户加到指定用户组中,默认会给新建用户建立一个同名的组,也就是说组里只有他一个人。sudo,表示super do以管理员身份执行。
添加用户test1:sudo useradd -m test1
创建用户xiaoming并添加到boys组中:sudo useradd -m -g boys xiaoming
创建用户xiaogang并添加到boys组中:sudo useradd -m -g boys xiaogang
创建用户xiaofang并添加到girls组中:sudo useradd -m -g girls xiaofang
创建用户xiaohong并添加到girls组中:sudo useradd -m -g girls xiaohong
(2) passwd,表示修改用户密码。
修改用户test1的密码:sudo passwd test1
(3) userdel,表示删除用户。
删除用户test1:sudo userdel test1
删除用户test1的用户目录:sudo rm -rf /home/test1/
(4) usermod,表示修改用户信息。
修改xiaofang用户到新组boys中:usermod -g boys xiaofang
(5) 超级用户
- 超级用户root类似于WIndows下的Administrator用户。切换到root用户,有全部权限,可以直接使用useradd。
- 在登录系统时,默认不允许以root用户登录。
- 只有特殊的用户(sudoer),才能执行sudo。比如incalos可以,而test1不行。
- su root 仅仅对当前会话(终端)有效,不影响当前桌面环境。
- root 权力太大,小心使用。
1. 首次使用,需要给root设置密码。
sudo paddwd root
2. 切换到root用户。su表示switch user切换用户。
su root
3. 退出。
exit
6. 用户和组
- Linux下可以创建多个用户,可以用组进行用户管理。比如男生组boys:ming bo gang;女生组girls:fang hong yue。
(1) groupadd,表示创建组。
创建boys组:sudo group add boys
创建girls组:sudo group add girls
(2) cat查看组和用户的信息。
查看组的信息,每一行表示一个组的信息,名称+ID:sudo cat /etc/group
查看用户的信息,每一行表示一个用户的信息,名称+ID:sudo cat /etc/passwd
7. 可执行脚本
- 脚本Script,一种解释执行的程序。Linux常见的三种脚本程序:Shell脚本 *.sh、Perl脚本 *.pl、Python脚本 *.py。
- 脚本程序本质是一个文本文件,具有可执行权限,均由解释器来执行。
- 以Python程序为例,先创建脚本文件,在文件头添加
#/bin/python3
,然后使用chomd
赋予可执行权限,在终端输入文件的路径(一般为./文件名
)
8. 程序与进程
- 程序 Program:指一个程序文件,如notepad.exe。
- 进程 Process:当一个程序运行起来,在操作系统内创建一条记录,用于描述和控制它的运行。比如打开多个notepad.exe,则得到多个进程。
- 前台进程:运行在前台。有控制台,输出至当前终端。有父进程,父进程即为当前终端,当终端关闭时,前台进程被一同关闭。使用Crtl+C强行中止。
- 后台进程:运行在后台。无控制台,看不到输出。父进程为系统进程(1 号进程),当终端关闭时,后台进程不受影响。使用kill -9 NNN强行中止。
(1) ps,表示查看进程。
直接显示:ps -ef
查看指定应用的进程:ps -ef | grep processname
- User:执行者
- PID:进程ID
- PPID:父进程ID
- STIME:启动时间
- CMD:启动时调用的命令行
(2) top,表示动态查看进程。
上/下方向键查阅,q键退出。
全部显示:top
用目标进程的PID查看进程(首先用ps命令查找目标进程的PID):top -p NNN
(3) kill,表示杀死进程。
用目标进程的PID杀死进程(首先用ps命令查找目标进程的PID):kill -9 NNN