Linux命令
Linux命令格式: command [-options] [parameter1]
一、文件管理
1. ls命令
查看文件信息
- -a 显示指定目录下所有子目录与文件,包括隐藏文件
- -l 以列表方式显示文件的详细信息
- -h 配合 -l 以人性化的方式显示文件大小
- -d 可以查看当前目录的属性
# 以列表的形式展现当前路径下所有文件并人性化显示文件大小
[root@localhost ~]# ls -alh .
-
-通配符
通配符 含义 * 所有字符 ? 任意字符 [] 匹配范围 / 转义字符
[root@localhost ~]# ls *.html .
[root@localhost ~]# ls config.ja?a .
[root@localhost ~]# ls [a-f].html .
[root@localhost ~]# ls /*.html .
2. cd命令
切换工作目录
[root@localhost ~]# cd ..
3. clear命令
清屏
[root@localhost ~]# clear
4. pwd命令
显示当前工作目录
[root@localhost ~]# pwd
5. mkdir命令
创建目录新建目录的名称不能与当前目录中已有的目录或文件同名,并且目录创建者必须对当前目录具有写权限。
[root@localhost ~]# mkdir test1 test2
6. touch命令
创建文件
[root@localhost ~]# mkdir test1 test2
7. cp命令
拷贝文件或目录
选项 | 含义 |
---|---|
-a | 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。 |
-n | 已经存在的目标文件而不提示 |
-i | 交互式复制,在覆盖目标文件之前将给出提示要求用户确认 |
-r | 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。 |
-v | 显示拷贝进度 |
# 把workspace复制到gitDev里面
[root@localhost ~]# cp -r /root/workspace/root/dev
8. mv命令
移动或者重命名文件和目录
[root@localhost ~]# mv /root/main.java /root/workspace/main.java
9. rm命令
删除文件或目录
参数 | 含义 |
---|---|
-f | 强制删除,忽略不存在的文件,无需提示 |
-r | 递归地删除目录下的内容,删除文件夹时必须加此参数 |
-v | 显示删除进度 |
[root@localhost ~]# rm -rf /root/workspace
10. cat命令
查看文件
#查看initial-setup-ks.cfg文件
[root@localhost ~]# cat initial-setup-ks.cfg
#将initial-setup-ks.cfg文件中的内容追加到cfg.txt文件中(在cfg.txt内容后追加)
[root@localhost ~]# cat initial-setup-ks.cfg>>cfg.txt
#查将initial-setup-ks.cfg文件中的内容追加到cfg.txt文件中(追加前清空cfg.txt)
[root@localhost ~]# cat initial-setup-ks.cfg>cfg.txt
11. find命令
搜索文件
命令 | 含义 |
---|---|
find test.sh |
查找当前目录下所有名为test.sh的文件 |
find *.sh |
查找当前目录下所有后缀为.sh的文件 |
find [A-Z]* |
查找当前目录下所有以字母开头的文件 |
find /tmp -size 2M |
查找在/tmp 目录下等于2M的文件 |
find /tmp -size +2M |
查找在/tmp 目录下大于2M的文件 |
find /tmp -size -2M |
查找在/tmp 目录下小于2M的文件 |
find -size +4k -size -5M |
查找当前目录下大于4k,小于5M的文件 |
find -perm 777 |
查找当前目录下权限为 777 的文件或目录 |
find / -user root |
查找在根目录下所有者为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文件并显示其详细信息 |
12. grep命令
搜索内容
#查找cfg.txt中是否包含字符串version
[root@localhost ~]# grep version cfg.txt
13. tar命令
归档(压缩解压)
参数 | 含义 |
---|---|
-c | 生成.tar打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-t | 列出档案中包含的文件 |
-x | 解压 |
-z | 打包同时压缩 |
cx不可能同时使用
#压缩
[root@localhost ~]# tar -zcvf test.tar.gz test
#解压
[root@localhost ~]# tar -zxvf test.tar.gz -C ./workspace
二、用户、权限管理
1. whoani命令
获取当前登录用户的用户名
[root@localhost ~]# whoani
2. useradd命令
添加用户账号
参数 | 含义 |
---|---|
-d | 指定用户登录系统时的主目录,如果不使用该参数,系统自动在/home目录下建立与用户名同名目录为主目录 |
-m | 自动建立目录 |
-g | 指定组名称 |
#创建一个用户andy,主目录在/home/andy,如果主目录不存在,就自动创建主目录,同时用户属于test组
[root@localhost ~]# useradd -d /home/andy andy -g test -m
3. passwd命令
设置或修改密码
[root@localhost ~]# passwd andy
4. su命令
切换用户
#切换到用户andy,同时切换到andy所在目录
[root@localhost ~]# su - andy
5. userdel命令
删除用户
#删除andy用户不删除主目录
[root@localhost ~]# userdel andy
#删除andy用户同时删除主目录
[root@localhost ~]# userdel -r abc
6 . 查看用户组
查看组
[root@localhost ~]# cat /etc/group
cat /etc/group
7. groupadd命令
添加组
[root@localhost ~]# groupadd group1
8. groupdel命令
添加组
[root@localhost ~]# groupdel group1
9. usermod命令
修改用户所在组
[root@localhost ~]# usermod -g group1 andy
10. groups命令
查看用户所在用户组
[root@localhost ~]# usermod -g group1 andy
11. chown命令
修改文件所有者
[root@localhost ~]# chown andy cfg.txt
12. chgrp命令
修改文件所有者
[root@localhost ~]# chgrp andy cfg.txt
13. chomd命令
修改文件权限
rwx | 含义 |
---|---|
r | read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。 |
w | write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。 |
x | excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。 |
13.1 字母表示
[ u/g/o/a ] | 含义 |
---|---|
u | user 表示该文件的所有者 |
g | group 表示与该文件的所有者属于同一组( group )者,即用户组 |
o | other 表示其他以外的人 |
a | all 表示这三者皆是 |
#把Hcfg.txt的权限改为 rwxrwxrwx
[root@localhost ~]# chmod a=rxw cfg.txt
13.2 数字表示
字母 | 说明 |
---|---|
r | 读取权限,数字代号为 “4” |
w | 写入权限,数字代号为 “2” |
x | 执行权限,数字代号为 “1” |
– | 不具任何权限,数字代号为 “0” |
#把Hcfg.txt的权限改为 rwxrwxrwx
[root@localhost ~]# chmod 777 cfg.txt
三、系统命令
1. cal命令
查看日历
[root@localhost ~]# cal
2. ps命令
查看进程信息
选项 | 含义 |
---|---|
-a | 显示终端上的所有进程,包括其他用户的进程 |
-u | 显示进程的详细状态 |
-x | 显示没有控制终端的进程 |
-w | 显示加宽,以便显示更多的信息 |
-r | 只显示正在运行的进程 |
#以ef的形式显示当前系统里面有java的进程
[root@localhost ~]# ps -ef | grep java
#以aux的形式显示当前系统里面所有的java进程
[root@localhost ~]# ps -aux | grep java
3. kill命令
根据进程id终止进程
4. df命令
磁盘空间占用和空余情况
选项 | 含义 |
---|---|
-a | 显示所有文件系统的磁盘使用情况 |
-m | 以1024字节为单位显示 |
-t | 显示各指定文件系统的磁盘空间使用情况 |
-T | 显示文件系统 |
[root@localhost ~]# df -T
5. centos7关闭防火墙
# 查看防火墙状态
[root@localhost ~]# firewall-cmd –state
#停止/重启/启动firewall
[root@localhost ~]# systemctl stop/restart/start firewalld.service
#禁止/启用 firewall开机启动
[root@localhost ~]# systemctl disable/enable firewalld.service
原创文章,作者:kirin,如若转载,请注明出处:https://blog.ytso.com/271458.html