命令一:Linux常用命令

1. 更改目录或文件属性chown、chmod:

chown (change ownerp) : 修改所属用户与组
cd ~进入 /root 目录(~)将install.log的拥有者改为bin这个账号:chown bin install.log
 ls -l
-rw-r--r--  1 bin  users 68495 Jun 25 08:53 install.log
将install.log的拥有者与群组改回为root:chown root:root install.log
 ls -l
-rw-r--r--  1 root root 68495 Jun 25 08:53 install.log

chmod (change mode) : 修改用户的权限
改变权限的方法一:
r:4
w:2
x:1
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx--- 分数则是:
owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others= --- = 0+0+0 = 0
将 .bashrc 这个文件所有的权限都设定启用
[root@www ~]# chmod 777 .bashrc
[root@www ~]# ls -al .bashrc
-rwxrwxrwx  1 root root 395 Jul  4 11:45 .bashrc
改变权限的方法二:
user:用户
group:组
others:其他
那么我们就可以使用 u, g, o 来代表三种身份的权限。
此外, a 则代表 all,即全部的身份。读写的权限可以写成 r, w, x
+(加入)
-(除去)
=(设定)
chmod u=rwx,g=rx,o=r  test1    // 修改 test1 权限
chmod  a-x test1    // 拿掉全部人的可执行权限

2. 处理目录的命令:
绝对路径:由根目录 / 写起,例如: /usr/share/doc 这个目录。
相对路径:不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd ../man 这就是相对路径的写法。
ls(英文全拼:list files): 列出目录及文件名
cd(英文全拼:change directory):切换目录
pwd(英文全拼:print work directory):显示目前的目录
mkdir(英文全拼:make directory):创建一个新的目录
(-m :配置文件的权限,直接配置,不需要看默认权限 (umask),mkdir -m 711 test2
-p :帮助你直接将所需要的目录(包含上一级目录)递归创建,mkdir -p test1/test2/test3/test4)
rmdir(英文全拼:remove directory):删除一个空的目录,rmdir -p test1/test2/test3/test4,-p :连同上一级『空的』目录也一起删除
cp(英文全拼:copy file): 复制文件或目录,
(用 root 身份,将 root 目录下的 .bashrc 复制到 /tmp 下,并命名为 bashrc
cp ~/.bashrc /tmp/bashrc
cp -i ~/.bashrc /tmp/bashrc
cp: overwrite `/tmp/bashrc'? n  <==n不覆盖,y为覆盖)
rm(英文全拼:remove): 删除文件或目录
mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称
(mv bashrc mvtest 移动文件bashrc到目录mvtest
mv mvtest mvtest2将mvtest目录名称更名为mvtest2)

3. 查看文件内容的命令:
cat  由第一行开始显示文件内容
tac  从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
nl   显示的时候,顺道输出行号!
more 一页一页的显示文件内容,空白键 (space):代表向下翻一页。Enter:代表向下翻『一行』
less 与 more 类似,但是比 more 更好的是,他可以往前翻页!空白键:向下翻动一页,pagedown]向下翻动一页,pageup向上翻动一页,N向下翻,shift+N向上翻,shift+G更新。
head 只看头几行
tail 只看尾巴几行

4. vi/vim文书编辑器:
i 切换到输入模式,以输入字符。按ESC键可随时退出输入模式,退出vi模式输入:wq
x 删除当前光标所在处的字符。
: 切换到底线命令模式,以在最底一行输入命令。按ESC键可随时退出底线命令模式,q 退出程序,w 保存文件

5. yum 命令:
yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。
yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令。
1. 列出所有可更新的软件清单命令:yum check-update
2. 更新所有软件命令:yum update
3. 仅安装指定的软件命令:yum install <package_name>
4. 仅更新指定的软件命令:yum update <package_name>
5. 列出所有可安裝的软件清单命令:yum list
6. 删除软件包命令:yum remove <package_name>
7. 查找软件包命令:yum search <keyword>
8. 清除缓存命令:
yum clean packages: 清除缓存目录下的软件包
yum clean headers: 清除缓存目录下的 headers
yum clean oldheaders: 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers

6. apt 命令:
apt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的 Shell 前端软件包管理器。
apt 命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令。
apt 命令执行需要超级管理员权限(root)。
列出所有可更新的软件清单命令:sudo apt update
升级软件包:sudo apt upgrade
列出可更新的软件包及版本信息:apt list --upgradeable
升级软件包,升级前先删除需要更新软件包:sudo apt full-upgrade
安装指定的软件命令:sudo apt install <package_name>
安装多个软件包:sudo apt install <package_1> <package_2> <package_3>
更新指定的软件命令:sudo apt update <package_name>
显示软件包具体信息,例如:版本号,安装大小,依赖关系等等:sudo apt show <package_name>
删除软件包命令:sudo apt remove <package_name>
清理不再使用的依赖和库文件: sudo apt autoremove
移除软件包及配置文件: sudo apt purge <package_name>
查找软件包命令: sudo apt search <keyword>
列出所有已安装的包:apt list --installed
列出所有已安装的包的版本信息:apt list --all-versions
将命令组合起来的写法如sudo apt update && sudo apt upgrade -y

7. grep 命令
强大的文本搜索命令,grep(Global Regular Expression Print) 全局正则表达式搜索。
常用参数:
-A n --after-context显示匹配字符后n行
-B n --before-context显示匹配字符前n行
-C n --context 显示匹配字符前后n行
-c --count 计算符合样式的列数
-i 忽略大小写
-l 只列出文件内容符合指定的样式的文件名称
-f 从文件中读取关键词
-n 显示匹配内容的所在文件中行数
-R 递归查找文件夹

grep 的规则表达式:
^  #锚定行的开始 如:'^grep'匹配所有以grep开头的行。 
$  #锚定行的结束 如:'grep$'匹配所有以grep结尾的行。 
.  #匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。  
*  #匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。
.*   #一起用代表任意字符。  
[]   #匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。 
[^]  #匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。  
\(..\)  #标记匹配字符,如'\(love\)',love被标记为1。   
\<      #锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。
\>      #锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。
x\{m\}  #重复字符x,m次,如:'0\{5\}'匹配包含5个o的行。 
x\{m,\}  #重复字符x,至少m次,如:'o\{5,\}'匹配至少有5个o的行。  
x\{m,n\}  #重复字符x,至少m次,不多于n次,如:'o\{5,10\}'匹配5--10个o的行。  
\w    #匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p。  
\W    #\w的反置形式,匹配一个或多个非单词字符,如点号句号等。  
\b    #单词锁定符,如: '\bgrep\b'只匹配grep。

扫描二维码关注公众号,回复: 12902729 查看本文章

1)查找指定进程(ps(process status),用来查看当前运行的进程状态,ps -ef显示当前所有进程环境变量及进程间关系)
ps -ef | grep svn
(2)查找指定进程个数
ps -ef | grep svn -c
(3)从文件中读取关键词
cat test1.txt | grep -f key.log
(4)从文件夹中递归查找以grep开头的行,并只列出文件
grep -lR '^grep' /tmp
(5)查找非x开关的行内容
grep '^[^x]' test.txt
(6)显示包含 ed 或者 at 字符的内容行
grep -E 'ed|at' test.txt


8. kill 命令
先使用ps查找进程pro1,然后用kill杀掉
kill -9 $(ps -ef | grep pro1)

9. 磁盘管理:
df:列出文件系统的整体磁盘使用量
du:检查磁盘空间使用量
fdisk:用于磁盘分区

10. 参考https://www.runoob.com/linux/linux-shell.html

猜你喜欢

转载自blog.csdn.net/chang_jinling/article/details/114922568