linux常用命令--不定时更新

目录

Linux命令下常用的快捷键:

tail命令:

head命令:

grep命令:

curl命令:

cat命令:

wc命令:

find命令:

echo命令:

vim界面下命令:

alias命令:

scp命令:

awk常用命令:

CP命令:

history命令:

防火墙有关命令:

linux 环境变量设置:

压缩和解压:

卷挂载:

yum命令:

du命令:

其他:


Linux命令下常用的快捷键:

TAB       :命令补全

Ctrl+ C :杀死当前进程

Ctrl + A:光标移动到命令行首

Ctrl + E:光标移动到行尾

Ctrl + R:  查找历史执行的命令,回车后即执行所查找到的命令

以单词为单位移动光标:

快捷键:Ctrl + →

快捷键:Ctrl + ←

tail命令:

tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。

1.  tail [filename]

tail 默认查看文件末尾10行,相当于:tail –n 10 [filename]

2.  tail –f  [filename]

实时查看日志信息

3.  tail  -c 10 [filename]

显示文件的最后 10 个字符

4.  tail  -n  50 [filename]

显示文件的最后 50 行数据

head命令:

指定显示头部内容的文件列表

-n<数字>:指定显示头部内容的行数;

-c<字符数>:指定显示头部内容的字符数;

-v:总是显示文件名的头信息;

1. head -n -v  20 [filename]

grep命令:

(-i 或 --ignore-case : 忽略字符大小写的差别。)

grep命令用于查找文件里符合条件的字符串。

1.  grep  "字符串" [filename]

查找文件名为filename的文件中包含字符串的数据

2.  grep  -c  "字符串" [filename]

统计文件名为filename的文件中包含字符串的行数

3. grep “字符串”[filename]  |  head  -10

只取前面10行匹配的结果

4. grep  -w  "单词"  [filename]    eg: grep -w  cpu  test.sh

匹配单词

5. grep  $'\t'字符串$'\t'   [filename]     eg:grep $'\t'2$'\t'   file.log

grep匹配tab符:$'\t'

有用命令:

grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行

grep -B 5 foo file 显示foo及前5行

grep -A 5 foo file 显示foo及后5行

ls | grep a.log

ll | grep a.log

grep设置查找颜色高亮( grep --color=auto ‘size’ a.txt)

问题:grep命令执行后匹配的结果不能高亮显示 解决方法:

step1: vim ~/.bashrc //在文件里# User specific aliases and functions这部分下面添加如下语句 alias grep='grep --color=auto' 1 2 3 4 5

step2: source ~/.bashrc 1

step3:测试成功

转自:https://blog.csdn.net/salove_y/article/details/79187202?utm_source=copy

curl命令:

curl www.baidu.com

curl  [url]  –X -POST  –d ‘data=********&a=dd’

curl  url -X POST

eg: curl http://localhost:8081/git/demo/tableRestService/queryTree -X POST

cat命令:

cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的

1.  cat   [filename]

显示整个文件

2.  cat  -n  [filename]

显示文件内容并对行号编号  (-b 对空白行不编号; -s 当遇到有连续两行以上的空白行,就代换为一行的空白行)

3.  cat  > filename

从键盘创建一个文件, 只能创建新文件,不能编辑已有文件.

4.  cat  file1   file2  > file

将几个文件合并为一个文件

有用命令:

  1、cat   a.txt   打印a文件所有内容
  2、tail -n 1000  a.txt   打印a文件最后1000行的数据
  3、tail -n +1000 a.txt  打印a文件第1000行开始以后的内容

  4、head -n 1000 a.txt   打印a文件前1000的内容

wc命令:

文本统计工具,全城word count。使用方法很简单。能将文件的行数、字数、字节数打印出来。

1、wc  -l   test.txt

       统计test.txt中文本的行数。

2、wc  -c  test.txt

       统计字节数   

3、wc  -w  test.txt

      统计字数,我所理解的字就是一个单词,单词都是又空格、tab键、换行符来分割的。

4、wc  -m  test.txt

       统计字符数。这和字节数是有区别的,因为一个中文字符会占3个字节。

find命令:

用来查找特定文件,在linux下一切皆是文件,因此十分有用。

基本格式:find  path  expression  [-exec  command  {}\;] 会默认遍历到子目录。

1、find  /home/work/   -name "*.cpp"    

查找/home/work/目录下,所有文件名以.cpp结尾的文件,当然目录也会匹配出来。

2、find  /home/work/   -name -type  f   "*.cpp"

 查找/home/work/目录下,所有文件名以.cpp结尾的普通文件。

3、find  /home/work/   -iname "*.cpp"  

-iname 表示忽略大小写,-name表示不忽略大小写,精确匹配。

4、find  /home/work/   /etc/ /usr  -name  "*.cpp"

查找多个目录下的.cpp文件

 扩展 : find  /home/work/  /etc/  /usr  -name  "[ab].cpp"     查找a.cpp或者b.cpp文件

             find /home/work/   /etc/  /usr  -name  "?.cpp"       "?"表示任意一个字符

5、 find  /home/work/  -size+20M

查找大于20M的文件,-20M表示小于20M

6、find  /home/work  -atime -5

查找5天内访问过的文件, +5 表示5天内没有访问过的文件。

扩展:用stat命令可以获得相关的时间戳。atime表示最近一次访问的时间,mtime表示最近一次内容修改的时间,ctime表示最近一次属性修改的时间,单位是天。amin, mmin,cmin单位是分钟。

7、find  /home/work  -atime -5  -a  -size -1M

 查找5天访问过的并且大小小于1M的文件。

 -a    与连接 ,   -o  或连接, -not  条件取反

echo命令:

echo打印换行方法:

echo要支持同C语言一样的\转义功能,只需要加上参数-e,如下所示:

echo -e "text1\ntext2"

输出结果

text1

text2

vim界面下命令:

1. 设置行号

在命令模式下,输入set number

:set number 

按下回车就显示行号

2. 关闭行号

在命令模式下,输入set nonumber

:set nonumber 

按下回车行号就没行号

alias命令:

取别名

用法:

alias cd=’cd f://’

查看所有alias:直接输入alias回车

取消别名:unalias cd

alias的设置改为永久有效:

在~/.bash_profile添加

vim    ~/.bash_profile,最后source   ~/.bash_profile即可

scp命令:

远程复制命令

可将远程服务器文件复制到本地路径,或将本地文件复制到远程服务器路径。

1. 远端拷贝到本地

scp  远端用户名@远端ip : 路径文件      本地路径

scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3 
scp -r www.runoob.com:/home/root/others/ /home/space/music/

scp test.200:/home/jar/srv_tomcat/test/webapps/test/WEB-INF/classes/org/jar/controller/TestController.class  /cygdrive/f/test/

scp  -r  test.200:/home/jar/srv_tomcat/test/webapps/test  /cygdrive/f/test/

 报错:本地路径不存在

          1. 本地路径不对,或者是没有创建f盘下的test目录

          2. 所在位置不对,使用这个命令时,不用在远端操作,即,不用ssh test.200命令进入远端

2. 本地拷贝到远程

scp local_file remote_username@remote_ip:remote_folder 
或者 
scp local_file remote_username@remote_ip:remote_file 
或者 
scp local_file remote_ip:remote_folder 
或者 
scp local_file remote_ip:remote_file 

scp   -r   /cygdrive/f/dinner_server/test    test.200:/home/jar/srv_tomcat/test/webapps/ 

(-r 命令即:递归拷贝)

awk常用命令:

1.  每行按空格或TAB分割,输出文本中的1、4项

awk  '{print $1,$4}'  log.txt

2. 使用","分割

awk  -F  ,  '{print$1,$2}'   log.txt

CP命令:

-r :递归持续复制,用于目录的复制行为  

history命令:

history命令:用于显示历史记录和执行过的指令命令。

history命令读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2

history命令:是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量 HISTSIZE进行控制。默认是不显示命令的执行时间,命令的执行时间,history 已经记录,只是没有显示。

防火墙有关命令:

防火墙iptables和firewalld

centos7 Failed to start iptables.service: Unit not found 防火墙:在CentOS 7或RHEL 7或Fedora中防火墙由firewalld来管理

(来着:centos7 Failed to start iptables.service: Unit not found 防火墙 - 小猪哥哥 - 博客园

添加:

# 开放80端口,即让防火墙不拦截,让外面可访问
firewall-cmd --zone=public --add-port=80/tcp --permanent 

(--permanent永久生效,没有此参数重启后失效)

firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent

重新载入:

firewall-cmd --reload

查看:

#查看8080端口是否开放
firewall-cmd --query-port=8080/tcp

# 返回yes表示开放了8080端口,外面可以访问8080
# 返回no表示8080没开放,无法访问到

删除:

firewall-cmd --remove-port=80/tcp --permanent

开启防火墙:

systemctl start firewalld.service

关闭防火墙:

systemctl stop firewalld.service

查看所有端口:

# 查询所有开放的端口。

[root@vm-1 opt]#  firewall-cmd --list-ports
5432/tcp 3306/tcp

# 查询所有开放的端口。持久

[root@vm-1 opt]# firewall-cmd --list-ports --permanent
5432/tcp 3306/tcp

查看运行状态:

firewall-cmd --state 

//running 表示运行 

linux 环境变量设置:

/etc/profile  与  ~/.bash_profile 文件是配置环境变量文件

区别:

/etc/profile 是系统整体设置 ,对系统内所有用户有效
 ~/.bash_profile 只对当前登录用户的设置,只对该用户有效

环境变量的查看:(可查看环境变量是否生效)

1. 查看单个环境变量,使用echo命令: 

echo $PATH 

2. 查看所有环境变量, 使用env命令: 

env 

压缩和解压:

压缩成zip包:

将dist目录压缩成dist.zip :   zip   -r   dist.zip  dist   

压缩成tar包、tar.gz包:

tar  cvf  /dir/file.tar    /dir/file  #仅打包,不压缩
tar zcvf /dir/file.tar.gz   /dir/file  #打包后,以gzip压缩

解压:

tar xvf backup.tar
tar zxvf /dir/file.tar.gz

卷挂载:

挂载卷命令

1. 查看可挂载的磁盘:  lsblk

2. 初始化磁盘:  sudo mkfs  -t  ext4  /dev/vdb

3.挂载卷:sudo mount  /dev/vdb  /u01

注意:/u01文件夹必须是空的,不然挂载上去之前u01里面的东西就无法显示,所以一般mount时都是新建一个文件夹,总之就是要保证它为空

yum命令:

yum也是包管理,也是管理rpm包的,

与rpm 区别: rpm只能对已有的包进行安装,yum可以从服务器上拉rpm包进行安装

安装unzip软件: yum install -y  unzip

-y(当安装过程提示选择全部为 "yes")

移除包: yum remove pam-devel

修改yum源:

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.bak

wget -O /etc/yum.repos.d/CentOS-Base.repo http://ip/CentOS7.repo

yum clean all

yum makecache

du命令:

du命令可以查看指定目录或文件所占用的磁盘空间。

查看当前目录下各文件大小:

du -ah --max-depth=1

 du -sh ./*

du命令参数说明:

-h:以易读方式显示文件大小

-s:显示目录占用磁盘空间大小,不显示其下子目录和文件占用的磁盘空间大小

-a:显示目录中所有文件大小,还显示其下目录和文件占用磁盘空间的大小

修改linux密码:

在root用户登录的情况下,执行以下指令,进入密码修改界面
# passwd
passwd命令后不加用户名,表示修改当前用户的密码
输入新密码即可,无需重启Linux系统。

# cat /etc/passwd 查看当前所有用户,自己创建的用户在最后

关于ssh配置:

/etc/hosts.deny

查看linux操作记录:

who -b : 查看最后一次(上次)系统启动的时间

[root@centos7 logs]$ who -b
系统引导 2023-01-29 13:21

last :查看最近登录的用户及ip

last -n 10: 查看最近10条登录用户及ip

[root@centos7 logs]$ who
root    pts/0        2023-01-29 14:09 (192.168.1.100)
root    pts/1        2023-01-29 14:09 (192.168.1.100)
root    pts/2        2023-01-29 13:58 (192.168.1.100)
root    pts/3        2023-01-29 13:58 (192.168.1.100)

uname -a :显示操作系统内核信息

其他:

查看端口占用情况: lsof -i:5432     或者     netstat -an|grep 5432

查看磁盘空间: df -kh

查看某个端口是否打开: telnet 127.0.0.1 8080

查看端口监听情况:

netstat -anutp

[root@vm-1 db_1]# netstat -anutp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      24141/mysqld        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      4877/sshd: /usr/sbi 
tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN      29756/postgres      
 

linux 释放内存空间:Linux释放内存空间 - 小得盈满 - 博客园

0:0是系统默认值,默认情况下表示不释放内存,由操作系统自动管理

  1:释放页缓存

  2:释放dentries和inodes

  3:释放所有缓存

echo 3 > /proc/sys/vm/drop_caches
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值