Linux 命令

显示文件列表命令
  -a 显示指定目录下所有子目录与文件,包括隐藏文件
  -l 以列表的方式显示文件的详细信息
  -h 配合-l 以人性化的方式显示文件大小
  ls 查看当前目录内容 隐藏文件看不到
  ls -a 查看当前目录内容 包括隐藏文件
  ls -al 查看目录内的详细信息 包括文件大小 类型 权限
  ls -lh 查看目录的内容的详细信息,以K,M,G的方式显示文件大小
  ls /root 查看root目录下的内容
  ll 等价与 ls -l
  pwd 查看当前所在目录
  mkdir 用于创建目录 该目录不能与当前目录中已有的目录或文件同名
    mkdir test 创建test目录
    mkdir -p /root/test/demo 创建有层级的目录
rm 用于删除文件或者目录
    rm a.text 删除a.text文件,并且有删除提示
    rm -r test 删除test目录,并且有删除提示
    rm -fr test 直接删除test目录,不会提示
    rm -f a.text 强制删除a.text文件
 

mv 命令
  mv 文件 目录/   将文件移动到另一个目录中
  mv 旧文件名 新文件名  对文件进行重命名例如:mv old.text new.text
  mv 被移动目录 目标目录  将目录移动到另一个目录中

cat命令
  用于查看文件内容或将多个文件合并输出
  cat [参数] 文件
  参数取值可有可无,根据需求;取值如下:
  -n 显示文件每行的行号
  -b 显示非空行的行号
  -s 多个空行连续出现时,压缩成一行空行
  -v 显示非打印字符
  -E 在每一行的结尾添加$符号
  -T 将制表符显示为^|
  -A 等价于 -vET

more命令
  more 文件名 #分页显示文件内容,支持跳转
  more demo.log
    Enter:向下n行,需要定义,默认1行
    空格键:向下滚动一屏 或者 Ctrl+f
    B键:返回上一屏 或者 Ctrl+b
    q:退出more
  less命令和more类似

tar命令
参数: -c 建立新的压缩文件
    -v 显示指令执行过程
    -f<备份文件> 指定压缩文件
    -z 通过gzip指令处理压缩文件
    -t 列出压缩文件中的内容
    -x 表示解压
tar -cvf 打包文件名 文件名    打包文件并指定打包之后的文件名(仅打包不压缩)
tar -zcvf 压缩文件名 文件名/文件夹名   压缩文件或者文件夹并指定压缩文件名(打包压缩)
tar -ztvf 压缩文件名            查看压缩文件中有哪些文件
tar -zxvf 压缩文件名           将文件解压到当前目录
tar -zxvf 压缩文件名 -C 目录     将文件解压到指定目录,

.tar 解包:tar -xvf FileName.tar 打包:tar -cvf FileName.tar DirName (注:tar是打包,不是压缩!) ——————————————— .gz 解压1:gunzip FileName.gz 解压2:gzip
-d FileName.gz 压缩文件:gzip FileName
压缩当前目录下所有文件:gzip *
解压文件并列出详细信息: gzip -dv *
.tar.gz 和 .tgz 解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirName ——————————————— .bz2 解压1:bzip2
-d FileName.bz2 解压2:bunzip2 FileName.bz2
bunzip2 -v FileName.bz2 解压并显示详细信息
压缩: bzip2 -z FileName

.tar.bz2 解压:tar jxvf FileName.tar.bz2 压缩:tar jcvf FileName.tar.bz2 DirName ——————————————— .bz 解压1:bzip2
-d FileName.bz 解压2:bunzip2 FileName.bz 压缩:未知 .tar.bz 解压:tar jxvf FileName.tar.bz 压缩:未知 ——————————————— .Z 解压:uncompress FileName.Z 压缩:compress FileName .tar.Z 解压:tar zxvf FileName.tar.Z 压缩:tar zcvf FileName.tar.Z DirName ——————————————— .zip 解压:unzip FileName.zip
unzip -l 压缩文件  查看压缩文件中有多少内容
unzip -d 指定文件夹 压缩文件    将压缩文件解压到指定文件夹
压缩:zip FileName.zip DirName
zip -q -r 压缩文件名/文件夹 压缩 ——————————————— .rar 解压:rar x FileName.rar 压缩:rar a FileName.rar DirName

------------------------------
编辑
# vim opt/../../文件名 此时进入的是查看模式 无法编辑
i --> 进入编辑模式 Esc -->退出编辑模式
:wq --> 保存编辑内容退出
:q! -->不保存编辑内容退出

提升权限命令:sudo
编辑文件时(vi /opt/demo),权限不够文件是只读属性,可输入 sudo vi /opt/demo 对文件可进行编辑
touch demo.js  创建文件
touch /root/demo.js 在root目录下创建demo.js文件

rmdir 文件夹名 删除目录(必须为空)
rmdir -p a/b/c 删除c目录,删完c文件夹 b文件夹为空 则也删除,删完b a如果也为空 则一起删

cp -r a/* b 将a文件夹中所有内容拷贝到b文件夹里

find / -name 'insta*' 查找 / 根目录文件名以insta开头的文件
find / -type f -size +100M 查找 / 根目录下,文件大小超过100M的文件
top命令
top 实时显示所有的进程信息
top -c 实时显示所有的进程信息(显示完整命令)
top -p PID 实时显示制定的进程信息、
结束监控快捷键: q

kill结束进程命令
kill 进程号
kill -9 进程号
kill -9 $(ps -ef|grep tom) 杀死tom的所有进程
killall -u 用户名 杀死指定用户的所有进程

shutdown 关机命令
shutdown -h now 立马关机
shutdown +1 "提示信息" 一分钟后关机,并给出提示信息
shutdown -r +1 "提示信息" 一分钟后重启,并给出提示信息
shutdown -c 取消当前关机操作

reboot 立马重启命令

who 显示当前登录系统的用户
who -H 显示明细信息

timedatectl 校正服务器时间、时区(NTP enabled: yes)
timedatectl set-time "yyyy-mm-dd hh:mm:ss" 设置日期时间
timedatectl set-ntp true 启动ntp时间同步 一般使用NTP服务器,进行时间校准


属主权限(u):所属用户,拥有哪些权限
属组权限(g):所属用户组
其他用户权限(o)
追加权限:
给所属用户(u)赋予文件demo.js的执行权限:chomd u+x demo.js
给所属用户组(g)赋予文件demo.js的写权限:chomd g+w demo.js
给其他用户组(o)赋予文件demo.js的读权限:chomd o+r demo.js
一次性赋予权限:chomd o=rwx demo.js
给所有权限赋予执行权限:chomd +x demo.js

chmod -R 777 a 对a文件夹进行授权 drwxrwxrwx 满权限
chmod -R 421 a.txt -r---w---x
chmod -R 472 a.txt -r--rwx-w-
chmod -R 644 a.txt -rw-r--r--

grep命令
grep 关键字 文件名.txt 在文件中查找关键字 对文件进行文本查询
grep -n 关键字 文件名.txt 把包含关键字的行展示出来,并且加上行号
grep -i 关键字 文件名.txt 把包含关键字的行展示出来,搜索是忽略大小写
grep -v 关键字 文件名.txt 把不包含关键字的行展示出来
grep -c 关键字 文件名.txt 只输出匹配的行数
grep -r 关键字 #在当前目录中递归查找包含关键字的信息,也可指定查找文件名 或 文件目录
匹配正则表达式
ps命令
ps 显示当前正在运行的进程信息
ps -a 显示系统中所有的进程信息
ps -ef 显示系统中所有的进程信息(完整信息)
ps -u 用户名 显示制定用户的进程信息
ps -x 显示以无终端控制运行的进程
ps -ef|grep tom 过滤出tom的所有进程
管道命令:将一个命令的输出作为下一个命令的输入
ps -ef|grep 关键字 查找制定的进程信息,包含grep进程
ps -ef|grep 关键字|grep -v "grep" 查找制定的进程信息,不包含grep进程
ps -ef|grep -c sshd 查找进程sshd的个数

定时任务:
crontab -l 查看定时任务列表
crontab -e 查看当前有哪些定时任务,按i进入编辑模式
":wq"保存退出 ":wq!"强制保存退出(对只读文件强制修改)
":q"退出,如有修改会提示是否保存Y或者N ":q!"强制不保存退出
*/1 * * * * su - root -c "shell文件全路径地址" //每分钟执行一次定时任务
cd shell定时任务文件路径
chmod +x shell文件名.sh 添加执行权限
./start.sh & tailf /opt/../../tomcat/logs/catalina.out

ifconfig 显示激活的网卡信息
ifconfig 网卡名 down   关闭网卡
ifconfig 网卡名 up    启动网卡
ifconfig 网卡名 192.168.12.111 将网卡的ip地址设置为192.168.12.111
ifconfig 网卡名 192.168.12.111 netmask 255.255.255.0 设置网卡的ip地址和子网掩码

ping 网址 检测是否与网址联通
ping -c 2 网址 指定接受包的次数为2

netstat -a 显示详细的链接状况
netstat -i 显示网卡列表
netstat -nltp 查看当前使用的端口
netstat -nltp | grep 8080 查看8080端口被哪些服务使用

systemctl start 服务名    开启服务
systemctl stop 服务名     关闭服务
systemctl status 服务名    显示服务状态
systemctl enable 服务名    设置开机自启动
systemctl disable 服务名    关闭开机自启动

lsblk  列出硬盘的使用情况
lsblk -f   显示系统信息

df  显示整个磁盘使用情况
df 文件夹  显示文件夹的使用情况
df -total  显示所有的信息
df -h   将结果变成KB、MB、GB形式展示,利于阅读。后边可拼接查看目录

reboot 重新启动

mount命令
使用要求 1.挂载的文件夹需要新建 2.该挂载的目录不可被其他进程使用 3.挂载点下原有文件将被隐藏
mount -t auto /dev/cdrom 文件夹  开始将cdrom挂载到文件夹下
umount 文件夹  卸载挂载点  

yum源
yum install -y wget  安装下载工具wget
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  下载阿里云的Centos-7.repo文件
yum clean all  清理之前的缓存,并重新加载yum
yum makecache  建立一个缓存文件
yum search tomcat  查找软件,验证阿里的yum源是否可以正常使用
yum -y install lrzsz 安装上传工具 上传:rz 下载:sz
2. Linux查看防火墙状态及关闭或者重启的命令(CentOS7或者red hat)
service命令是在centos7之前的
查看网络服务状态
systemctl status network

查看防火墙的状态(是否有开启)
 systemctl status firewalld  
 service iptables status
暂时关闭防火墙
 systemctl stop firewalld
 service iptables stop
暂时关闭后,开启防火墙
 systemctl start firewalld
 service iptables start
永久关闭防火墙(开机禁用)
 systemctl disable firewalld
 chkconfig iptables off
重启防火墙
 service iptables restart
永久关闭后,开启防火墙(开机自动启用)
 systemctl enable firewalld
 chkconfig iptables on

磁盘管理
  df -h 显示磁盘剩余空间
  du -h [目录] 显示目录下的目录大小
  free -h 查看内存使用率

时间日期
  date 查看系统时间
  date + "%Y-%m-%d %H:%M:%S" 查看系统时间 指定格式
  date -s "时间字符串" 设置系统时间

ln软连接
  ln -s 实际文件路径 访问文件路径

安装 JDK
1. 把压缩包上传到服务器/usr/local/tmp
2. 解压压缩包 # tar zxvf 文件名
3. 把解压后文件复制到/usr/local/jdk7 # cp -r 文件名 /usr/local/jdk7
4. 配置环境变量,执行命令 # vim /etc/profile
5. 修改文件中内容
  5.1 分割使用冒号
  5.2 $变量名表示引用
  5.3 export 添加或修改变量
  #export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
  export JAVA_HOME=/usr/local/jdk7
  export PATH=$JAVA_HOME/bin:$PATH
  export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
6. 解析文件(或重启系统) # source /etc/profile
7. 验证配置是否成功 # java -version

Tomcat 配置
1. 把 tomcat 压缩包上传到服务器
2. 解压 tomcat # tar zxvf 压缩包名
3. 解压后的文件夹复制到/usr/local/tomcat # cp -r apache-tomcat-7.0.68 /usr/local/tomcat
4. 配置环境变量
  4.1 # vim /etc/profile
  4.2 添加内容
    export TOMCAT_HOME=/usr/local/tomcat
    export CATALINA_HOME=/usr/local/tomcat
5. 放行 8080 端口
  5.1 # vim /etc/sysconfig/iptables
  5.2 把包含 22 行复制一行,修改 22 为 8080 5.2.1 8080:9000 从 8080 到 9000 全放行
  5.3 重启服务: # service iptables restart 5.3.1 restart 重启 5.3.2 start 启动 5.3.3 stop 停止
6. 启动 tomcat,进入到 tomcat/bin 文件夹
  6.1 直接启动 # ./startup.sh
  6.2 启动并动态打印启动信息 # ./startup.sh & tailf /usr/local/tomcat/logs/catalina.out

 

shell脚本执行方式:
    1. sh demo.sh  不需要执行权限
    2. ./demo.sh  需要执行权限(chmod +x demo.sh 添加执行权限)
    3. /export/shell/demo.sh 需要执行权限(chmod +x demo.sh 添加执行权限)生产环境使用该方式

  shell算术运算:
    方式一:echo 'expr $a + $b' 加号两边必须空格
    方式二:$((a+b))
    方式三:$[a+b]

 

posted @ 2019-11-18 21:36  景、  阅读(265)  评论(0编辑  收藏  举报