LINUX学习笔记——常用指令

一. 常用快捷键

快捷键:
CTRL+U剪切光标前的内容
CTRL+K剪切光标后至行末的内容
CTRL+Y 粘贴
CTRL+A 光标移动到行首
CTRL+E 光标移动到行末
CTRL+F光标跳到下一个空格
CTRL+B光标跳到上一个空格
ALT+Backspace 删除前一个单词
CTRL+W 剪切光标下一个单词
Shift+insert 向终端内粘贴文本

二. 高频指令

1. ls 列出目录下所有文件与目录的名称

ls  [选项]  路径      //使用格式
ls -l                 //列表显示
ls -a                //显示隐藏文件
ls -h                //文件大小可读性增加
ls -lS               //按照文件大小进行降序显示
ls -lt               //按照修改时间(倒序)显示

2. cd 切换工作目录

cd ~              //切换到当前用户家目录
cd ../            //切换到上一级目录

3. pwd直接打印当前工作目录

4. mkdir 创建目录

mkdir [-p]  路径    //-p可以生成多层嵌套的目录
mkdir -p  ~/a/b/c   //一次性完成嵌套目录生成 

5. touch 创建文件

touch ~/123.text

6. cp 复制文件/目录

cp [-r] 原路径  新路径      //-r表示递归,复制目录时一般要加
cp  ~/123.text  /root/        
cp  -r  /home/abc   /root/

7. mv 移动(剪切)

mv  原路径  新路径                  //改名一般用这个指令
mv /root/123.txt   /root/abc.txt   //实现改名

8. rm 移除(删除)
使用格式:rm [-rf] 路径 (r为递归,处理目录时用;f为force,就不会跳出提示)
9. “>” && “>>” 输出重定向

ls ~ > /root/abc.txt          //覆盖输出
ls ~ >> /root/abc.txt         //追加输出
ls ~ > /root/123.txt          //文件不存在,此时将自动创建

10. cat 打开文件/合并文件

cat [选项] 路径 //打开文件并将内容输出到默认输出设备(终端)
cat [-n] a      //查看并显示行号
cat a b c > x //将多个文件内容合并一个文件x中,如果x不存在将默认创建

11. df 查看磁盘空间

df -h             //-h增加可读性,文件大小自动选择合适单位

12. free 查看内存空间

free -m           //-m表示以mb为单位显示,也可以用-g表示GB

15. head 查看文件前几行

head [-n] 路径    //n表示行数,不写默认为10行

16. tail 查看文件最后几行

tail [-n] 路径
tail -f 路径     //可以动态查看文件内容变化,一般用来查看系统日志的更新

17. wc 统计文件信息

wc [-lwc] 文件路径    //lwc分别表示行数、单词数、字节数,默认全部输出

18. date 日期

date              //直接输出当前时间,但是可读性不好
date +%F  <=>  date +"%Y-%m-%d"  //输出2020-07-10
date +"%F %T" <=>date +"%Y-%m-%d %H:%M:%S"   //输出2020-07-10 10:35:24
date -d -1day +"%Y-%m-%d %H:%M:%S"  //显示前一天,用+表示后一天,同理可以用到其他单位上

19. cal 日历

cal [-n]      //默认输出当月日历,n表示一共输出几个月,按当月中心展开
cal -y       //输出全年日历

20. | 管道符

ps -ef | grep mysql   //查看MySQL相关进程,一般配合grep使用

21. hostname 操作服务器的主机名

hostname      //输出完整的主机名
hostname -f    //输出主机的FOND(全限定域名)
hostname  主机名  新主机名  //临时改变主机名,切换用户后生效,重启失效

22. id 用于查看一个用户的基本信息

id         //输出当前用户信息
id 用户名  //输出指定用户信息

23. whoami 显示当前登陆的用户名(一般用于shell脚本,查看日志)
24. ps 查看服务器的进程信息

ps -ef   //e表示显示全部进程,f表示显示进程的详细信息(列)

25. top 查看服务器进程占用的资源

top //键盘输入M为按内存使用排序,C为按CPU排序,按下1多CPU分开显示

26. du 查看目录的真实大小

du - sh  路径      //s表示只显示汇总大小,h可读性更高

27. 查找文件的几种方式
① find

find 路径 选项 选项的值
find ~  -name  *.txt   //家目录下文件名以.txt结尾的所有文件
find ~  -type  f      //家目录下的所有文件
find ~  -type  d     //家目录下的所有目录

② which 查看执行文件的位置

③ whereis 查看可执行文件位置及其相关文件
④ locate 配合数据库缓存,快速查看文件位置
⑤ grep 在文件中查找指定内容

grep  [参数]  目标值  路径
常用参数 【-v 取反】 【-i 忽略大小写】 【-n 打印行号】
grep root /etc/passwd          //找到包含root的行
grep -v root /etc/passwd       //找到没有root的行

28. service 控制软件服务

service  服务名  start/stop/restart
service httpd start    //启动本机的apache服务

29. kill 杀死进程

kill 进程id    //一般先用ps -ef |grep 指令找到对应的进程id

30. ifconfig 查看网卡信息
31. reboot 重新启动计算机
32. shutdowm 关机

shutdown -h now “关机提示” 
shutdown -h 15:35 “关机提示”
其他关机指令:init 0    poweroff    halt

33. uptime 输出计算机持续在线时间
34. uname 获取操作系统相关信息

uname -a  //系统的全部信息

35. netstat 网络状态

指令格式:netstat -tnlp
-t 表示过滤出TCP协议的连接
-n 将字母转换为数字
-l 表示过滤出状态为LISTEN(监听)的连接
-p 显示发起连接的进程pid和进程名称

38. man 包含所有指令的手册

man 指令

三 防火墙相关指令

Ubuntu

查看防火墙状态:sudo ufw status
启用防火墙:sudo ufw enable
关闭防火墙:sudo ufw disable

 sudo ufw allow 80 //允许外部访问80端口

 sudo ufw delete allow 80 //禁止外部访问80 端口

 sudo ufw allow from 192.168.1.1 //允许此IP访问所有的本机端口

 sudo ufw deny smtp //禁止外部访问smtp服务

 sudo ufw delete allow smtp //删除上面建立的某条规则

 sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 22 
 //要拒绝所有的TCP流量从10.0.0.0/8 到192.168.0.1地址的22端口

centos

查看防火墙状态:systemctl status firewalld
开启防火墙:systemctl start firewalld
关闭防火墙:systemctl stop firewalld
开机自启动/禁用开机启动 systemctl enable/disable firewalld

四. 查找软件安装位置

# whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
# ps -ef |grep mysql
mysql     1323  1148  1 15:40 ?        00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock
root      1359   997  0 15:40 pts/0    00:00:00 grep --color=auto mariadb
# which mysql
/usr/bin/mysql
其中:
/usr/bin/mysql为mysql的运行路径,然后可通过 /usr/bin/mysql -uxxx -pxxx 连接Mysql
/var/lib/mysql为数据库的数据存放目录

五 别名机制

①查看现有别名
直接在终端中输入alias

②临时别名

alias clc='clear'    //设置别名
ualias clc           //屏蔽别名

③永久别名

vim ~/.bashrc        //进入当前用户的别名文件,修改即可
cd /etc/profile.d        //切换到系统启动目录进行相关修改

你可能感兴趣的:(LINUX)