一、命令提示符说明
1. [root@localhost ~]#
-
root
: 当前登录用户 -
localhost
: 主机名 -
~
: 当前所在目录 -
#
: 超级用户提示符($: 普通用户)
2. -rwxr--r-- 1 root root 1904 May 28 16:00 a.txt
-
-
: 文件类型,-
: 文件,d
: 目录,l
: 软链接文件 -
rwx
: 文件访问权限,r
: 读,w
: 写,x
: 执行 -
rw-r--r--
: 三个字符一组, 分别表示所有者
所属组
其他角色
对该文件的访问权限 -
1
: 该文件被调用次数 - 第一个
root
: 示所有者u - 第二个
root
: 所属组g -
1904
: 文件大小, 单位: 字节byte -
May 28 16:00
: 文件最后一次修改时间 -
a.txt
: 文件名
二、基础命令
参考文章: https://www.cnblogs.com/yjd_hycf_space/p/7730690.html
命令 | 作用 | 说明 |
---|---|---|
cd /usr/local |
切换目录 | cd : change directory , 进入/usr/local 目录 |
cd .. |
返回上一级目录 | - |
./ |
当前目录 | - |
pwd |
显示当前目录 | - |
ls |
查看目录中的文件 | ls : list |
ll |
查看目录中文件的详细信息 | - |
mkdir test |
新建文件夹 | mkdir : make directory , 新建test 文件夹 |
rm -rf a.txt |
删除文件 | 删除a.txt 文件, rm : remove , -r(recursive) : 递归删除, -f(force) : 强制删除 |
mv ./test / |
移动文件(夹)或重命名 | mv : move , 移动当前文件夹test 到根目录下/ |
cp a.txt b.txt |
复制文件 | cp : copy , 复制a.txt 文件为b.txt |
touch a.txt |
创建文件 | 创建a.txt 文件 |
cat -n a.txt |
查看小文件内容 | -n : 显示行号 |
less -N a.txt |
查看大文件内容 | -N : 显示行号, 必须大写, 键盘上下键 上下移动一行, q 退出查看, /hello 命令查找hello 字符串 |
tail -f admin.log |
动态查看日志 | -f 循环读取 |
grep -n "hello" ./a.txt |
查找文件中某个字符串所在位置 | hello : 要查找的字符串, ./a.txt : 具体文件路径 |
sed -n '10,15p' nohup.out |
查询10-15 行的日志 |
|
find ./ -name "*.txt" |
查找文件 | ./ : 查找范围, -name : 根据文件名查找, *.txt : 所有以.txt 结尾的文件 |
find / -size +1G |
查找大于1G的所有文件 | - |
df -h |
显示文件系统的总容量, 使用量, 剩余量 | df : disk free , -h : 以KB, MB, GB 格式人性化显示 |
du -sh a.txt |
显示文件或目录大小 | du : disk usage , -s : 汇总 |
du sh * |
显示当前目录下所有文件夹大小 | - |
top |
性能分析命令, 进程CPU, 内存占用比等 | - |
vim a.txt |
编辑文件 | Esc -> : -> wq -> 保存退出, q! -> 不保存退出 |
sudo |
以系统管理者的身份执行指令 | switch user do |
./configure -> make -> make install |
安装三部曲 | ./configure : 根据系统情况自动生成编译时所需的Makefile 文件, make : 编译, make install : 安装 |
ifconfig |
查看和配置网络设备 | ifconfig : interfaces config |
netstat |
显示网络状态 | - |
netstat -nltp 管道符 grep 8080 |
查看端口所在进程 | -n : numeric , 直接使用IP地址, l : listening , 显示监控中的服务器的Socket, t : tcp , 显示TCP传输协议的连线状况, p : programs , 显示正在使用Socket的程序识别码和程序名称 |
ps -ef 管道符 grep tomcat |
查看进程 | ps : 将某个进程显示出来, 管道命令, 指ps命令与grep同时执行, -e : 显示所有程序, -f : 显示UID,PPIP,C与STIME栏位 |
kill -9 [pid] |
结束进程 | -9 : 强制结束 |
lsof |
列出当前系统打开的文件 | lsof : list open files |
lsof -i:8080 |
列出使用8080端口的进程ID | - |
echo "" > nohup.out |
清空文件 | echo : 字符串输出 |
sh |
执行脚本文件 | - |
bash |
执行脚本文件 | - |
shutdown -h now |
立即关机 | - |
reboot |
重启 | - |
groupadd group_name |
创建用户组 | - |
groupdel group_name |
删除用户组 | - |
groupmod -n new_group_name old_group_name |
重命名一个用户组 | -n : 新组名 |
useradd user1 |
创建一个新用户 | - |
userdel -r user1 |
删除一个用户 | -r : 排除主目录 |
passwd |
修改口令 | - |
service network restart |
重启网卡 | - |
CentOS 6 防火墙状态: |
- | - |
service iptables status |
查看防火墙状态 | - |
service iptables start |
开启防火墙 | 永久生效 |
service iptables stop |
关闭防火墙 | 永久生效 |
chkconfig iptables on |
开启防火墙 | 即时生效,重启后失效 |
chkconfig iptables off |
关闭防火墙 | 即时生效,重启后失效 |
CentOS 7 防火墙状态: |
- | - |
firewall-cmd --state |
查看防火墙状态 | 关闭后显示not running ,开启后显示running |
systemctl start firewalld.service |
开启防火墙 | - |
systemctl stop firewalld.service |
关闭防火墙 | - |
systemctl restart firewalld.service |
重启防火墙 | - |
systemctl disable firewalld.service |
禁止防火墙开机启动 | - |
uname -a |
输出系统的所有信息 | uname : 输出系统信息, -a : 显示所有信息, 输出内容包含内核名称, 内核版本, 内核发行号等信息 |
cat /etc/redhat-release |
查看CentOS版本 | 输出示例: CentOS Linux release 7.6.1810 (Core) |
sudo su |
切换到root用户 | - |
三、chmod命令
参考文章: http://c.biancheng.net/view/755.html
1. 作用:
修改文件访问权限
2. 使用数字修改文件权限
- 字符对应数字
r --> 4
w --> 2
x --> 1
所有者u 所属组g 其他o
使用方式
chmod [-R] 权限值 文件名
, -R(注意是大写)选项表示连同子目录中的所有文件,也都修改设定的权限。示例:
chmod 777 a.txt
再举个例子,通常我们以 Vim 编辑 Shell 文件批处理文件后,文件权限通常是 rw-rw-r--(644),那么,如果要将该文件变成可执行文件,并且不让其他人修改此文件,则只需将此文件的权限该为 rwxr-xr-x(755)即可。
3. 使用字母修改文件权限
chmod u=rwx,go=rx a.txt
+ - =
4. 常见数字权限
- -rw------- (600) 只有所有者才有读和写的权限。
- -rw-r--r-- (644) 只有所有者才有读和写的权限,群组和其他人只有读的权限。
- -rw-rw-rw- (666)每个人都有读写的权限
- -rwx------ (700) 只有所有者才有读,写和执行的权限。
- -rwx--x--x (711) 只有所有者才有读,写和执行的权限,群组和其他人只有执行的权限。
- -rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,群组和其他人只有读和执行的权限。
- -rwxrwxrwx (777) 每个人都有读,写和执行的权限
四、chown命令
1. 作用:
改变文件所有者和所属组
2. 示例:
将文件
a.txt
的所有者设为wangzai
, 所属组设为wangzaigroup
:
chown wangzai:wangzaigroup a.txt
将目前目录下的所有文件与子目录的拥有者都设为
wangzai
, 所属组设为wangzaigroup
:chown -R wangzai:wangzaigroup *
五、解压缩命令
1. 选项
-
-c
压缩 -
-x
解压缩 -
-z
:有gzip属性的 -
-v
:显示所有过程 -
-f
: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
2. 解压
- 解压
.tar
文件:tar xvf a.tar
- 解压
.gz
文件:gunzip
- 解压
.tar.gz
文件:tar zxvf a.tar.gz
- 解压
.rar
文件:unrar
- 解压
.zip
文件:unzip
3. 压缩
- 压缩成
.zip
文件:zip a.zip a.txt
- 压缩成
.tar
文件:tar cvf a.tar a.txt
- 压缩成
.tar.gz
文件:tar zcvf a.tar.gz a.txt
六、sudo命令
1. 作用:
通过sudo,我们能把某些超级权限有针对性的下放,并且不需要普通用户知道root密码(sudo用的不是root密码,而是当前用户密码),所以sudo相对于权限无限制性的su来说,还是比较安全的,所以sudo也能被称为受限制的su,另外sudo是需要授权许可的,所以也被称为授权许可的su。
2. 执行流程:
sudo执行命令的流程是当前用户切换到root(或其他指定切换到的用户),然后以root(或其他指定的切换到的用户)身份执行命令,执行完成后,直接退回到当前用户,而这些的前提是要通过sudo的配置文件/etc/sudoers来进行授权。
3. 配置文件:
sudo的配置文件是/etc/sudoers,我们可以用他的专用编辑工具visodu来进行配置,配置好后,可以切换到您授权的用户下,通过sudo -l来查看哪些命令是可以执行或禁止的。
七、wget rpm yum命令
1. wget:
类似于迅雷,是一种下载工具,World Wide Web”与“get”的结合。
2. yum:
Yellow dog Updater, Modified,软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。
3. rpm:
软件管理;r=redhat p=package m=management;用于安装 卸载 .rpm软件
4. 串联下:
使用wget下载一个 rpm包, 然后用 rpm -ivh xxx.rpm 安装这个软件,嫌麻烦的话,就可以直接用 yum install sqoop 来自动下载和安装依赖的rpm软件。
5. 常用命令:
- 安装:rpm -ivh *.rpm
- 卸载:rpm -e packgename
- 查看是否已经安装:rpm -q nginx
- 安装:yum install xxx
- 移除:yum remove xxx
- yum –y install xxx
八、dump命令
1. 安装dump
:
yum -y install dump
2. 作用:
备份文件系统
3. 格式:
dump [选项] 备份之后的文件名 原文件或目录
4. 选项:
-
-level
:0~9
: 共10个备份级别,0
: 完全备份,1~9
: 增量备份 -
-f
: 备份之后的文件名 -
-u
: 备份成功之后, 把备份时间记录在/etc/dumpdates
文件中 -
-v
: 显示备份过程中更多的输出信息 -
-j
: 调用bzlib
库压缩备份文件, 其实就是把备份文件压缩为.bz2
格式, 默认压缩等级是2 -
-W
: 显示允许被dump的分区的备份等级及备份时间
5. 示例
dump -0 -f /usr/local/test/test1.bak /usr/local/test/test1
九、linux服务器之间传输文件
1. 说明:
scp
: secure copy
2. 用法:
本地文件 -> 远程服务器:
scp a.txt [email protected]:/home/
然后直接输入远程服务器密码远程服务器文件 -> 本地:
scp [email protected]:/home/a.txt /home
即调换顺序即可
十、linux windows之间传输文件
1. linux安装lrzsz
命令:
yum -y install lrzsz
2. 用法:
rz
回车:receive
, 接收文件, 然后从windows选择一个文件上传到linux, 即:windows
->linux
sz a.txt
回车:send
, 发送a.txt
文件到windows, 即:linux
->windows
3. 说明:
当使用Git Bash Here
的shell终端时, rz
命令会出现waiting to receive.**B0100000023be50
错误, 因为Git shell
不支持rz
与sz
, 解决办法: 换用xshell
或其他终端即可
十一、根据当前时间创建文件夹
sudo mkdir `date +%Y_%m_%d_%H_%m`