linux常用命令汇总

本文总结了Linux系统中常见的文件操作命令,如创建、移动、拷贝、权限管理,以及网络服务的管理、文件系统操作、用户组管理等,方便快速查阅和实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux常用命令汇总

文件操作

  • 创建文件

    touch a.avi 创建一个空文件

    echo "itcast " > itcast.txt 把“>”左边的输出放到右边的文件里去 (>>表示可以追加原来文件内容)

    vi blabla.txt 用文本编辑器编辑一个文件并且保存( :wq 保存并退出 :q! 强制退出 )

  • 移动文件、修改文件名

    mv a/1.txt b/2.txt (移动文件的同时还修改了文件名)

  • 拷贝文件

    cp srcFile destFile

    如果destFile目录不存在,则可以直接使用 cp -r srcFile destFile

    如果destFile目录已存在,则需要使用 cp -r srcFile /. destFile

    scp leaf6-isp··.zip root@192.168.19.117:/opt/data/wx

    把本地文件拷贝到远程服务器

  • 查看文本文件内容

    cat log.a.txt 一次性显示整个文件内容

    more a.txt 可以分页看(翻页:空格 往回翻:b 退出: q或者 Ctrl+C)

    less a.txt 搜索: /关键字 翻页:空格 往回翻:↑ 往下翻:↓ 跳到最前 :g 跳到末尾:G

    tail -10 a.txt 查看文件的尾部的10行

    tail -f user.log 实时刷新显示文件的尾部

    head -20 a.txt 查看文件的头部20行

  • 查看文件大小

    du -h 文件名 ; ls -h 文件名

  • 文件归档压缩

    tar -cvf testdir.tar testdir/ 打包归档

    tar –xvf testdir.tar 解包

    -c :创建一个打包文档 -v:显示打包的进度 -f:指定打包/解压文件 -x:还原文件

  • 压缩/解压

    gzip testdir.tar

    gzip –d testdir.tar.gz

    -d:解压 -v:显示指令执行过程 -V:显示版本信息

  • 归档并压缩/解压

    tar -czvf testdir.tar.gz testdir/ 归档并压缩

    tar -xzvf testdir.tar.gz -C Downloads/ 解压到指定的Downloads目录下

    zip 【-r】 test.txt.zip test.txt 压缩

    unzip test.txt.zip 解压

    -z:通过gzip指令处理文件;

    -r:递归压缩子目录下所有文件

  • jar -cvf ROOT.war ./ROOT/* 打war包

    unzip ROOT.war -d ROOT解压war文件到指定的文件

  • 文件权限管理

    linux文件以及目录的权限

    读(r) :用户是否有权力读文件的内容;

    写(w) :用户是否有权利改变文件的内容;

    执行(x) :用户是否有权利执行文件;

    Linux的文件系统能够将操作文件的用户分为3类:

    ​ 拥有者(u) 所属组(g) 其他用户(o) 所有人(a)

    chmod [-R] u+rwx,g-rx,o=rx a.txt 给文件a.txt赋予相应的权限

    sudo chmod -R 777 /opt/Tomcat

    +:添加权限 -:删除权限 =赋予给定权限并取消其它权限

    也可以用数字表示权限,等效 于chmod [-R] 755 file

    在linux权限管理中,r对应4,w对应2,x对应1

    更改文件或目录的属主(拥有者)和属组:chown [-R] 用户或组 文件

    改变文件或目录所属的组 :chgrp [-R] group filename

    [-R]:表示递归修改权限 ,修改某个目录下所有文件及文件夹

    参考:https://www.cnblogs.com/Berryxiong/p/6193866.html

文件夹操作

ls /path/ 查看目录信息

-l 查看详细信息 –a 查看所有内容 --help 查看所有参数

pwd 查看当前所处目录的绝对路径

cd /path 切换目录 切换到用户主目录 :cd /

mkdir 【参数】 /a/b/c 创建文件夹 参数: -p 文件夹的父目录不存在,则自动创建

rmdir [参数] 删除空文件夹 参数:-r 删除非空文件夹

删除文件

rm filename (rm -r 删除文件夹 rm -rf 强制删除文件或文件夹(无法找回))

用户及用户组管理

  • 添加用户

    添加用户useradd aaa

    设置密码 passwd 1234

    参数手册:

    -u 指定组ID -g 指定所属的组 -G 指定多个组,用逗号“,”分开 -c 用户描述(comment)-e 失效时间

  • 删除用户

    userdel yun12 ----这样删除的时候,用户的主目录会被保留

    userdel -r yun12 -----删除用户的同时删除用户的主目录

  • 修改用户

    **指令:**usermod

    参数:

    -l 修改用户名 (usermod -l a b(b改为a)

    -g 添加组 -d 修改用户的宿主目录 -G添加多个组 -L 锁定用户账号密码(Lock)-U 解锁用户账号

  • 创建用户组

    groupadd java

  • 删除用户组

    groupdel bigdata(作为某用户的主组primary group 不可删)

  • 修改用户组属性

    groupmod –n newname grpname

  • 查看用所属的组

    groups itcast

网络命令

  • 列出系统所有应用服务状态 :service --status-all
  • 查看指定服务运行状态:service servicename status
  • 启动服务:service servicename start
  • 停止服务:service servicename stop
  • 列出所有服务的随机自起配置:chkconfig --list
  • 关闭服务的随机自起:chkconfig servicename off
  • 开启服务的随机自起:chkconfig servicename on

常用示例:

  • 重启网络服务 service network restart

    • 停止httpdservice httpd stop
    • 启动 httpdservice httpd start
  • 关闭防火墙服务 service iptables stop

  • 关闭防火墙自动启动 chkconfig iptables off

查看网络连接信息 指令:netstat

netstat常用示例:netstat -natp || netstat -nltp || netstat -naup

常用参数解释:

-a 显示所有连接和监听端口

-l 只显示监听进程

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-p 显示建立相关链接的程序名

查看防火墙状态 firewall-cmd --state
开启防火墙:firewall-cmd start
防火墙重启:firewall-cmd --reload
#查看防火墙规则(只显示/etc/firewalld/zones/public.xml中防火墙策略)
firewall-cmd --list-all-zones

系统管理

查看磁盘/内存使用信息

  • df -h 查看磁盘空间状态信息
  • du -sh [文件目录] 查看指定目录下所有子目录和文件的汇总大小
  • free 查看内存使用状况

进程管理

  • top 查看实时刷新的系统进程信息
  • ps -ef 查看系统中当前瞬间的进程信息快照
  • ps -ef | grep myshell.sh 搜索myshell进程的信息
  • kill -9 pid 杀掉进程 (-9 表示强制杀死)

搜索指令

grep [参数] 内容

参数: -r 递归搜索子目录 -l 只列出有匹配行的文件名 -n 列出匹配行的行号 -d skip 不搜索子文件夹

常用grep跟其他命令组合使用 示例: service --status-all | grep ‘httpd’ || netstat -nltp | grep ‘22’

find 根据文件名,文件所有者,创建时间,文件大小,文件类型,文件权限信息等条件来查找匹配的文件

按照文件名称查找(可支持正则表达式)

find ./ -name ‘*.txt’ || find ./ -name ‘install’

按照文件类型查找

find ./ -type f

find ./ -type l

whoami 查询当前登陆者的身份

which 查询指定命令的$PATH路径

locate + 文件名 全局查找文件

其他

wc

统计文本信息(行数,词数,字符数) wc -c/w/l/

date 查看或者修改系统的日期和时间

echo 输出字符串或者变量的值

rpm -qa | grep httpd   #[搜索指定rpm包是否安装]

查看内存、磁盘信息

top 查看内存整体使用情况

free -h 查看内存整体使用情况 -h 以适合人类可读的方式展示

df -h 查看磁盘各分区大小、已用空间等信息

du -sh 【指定目录】 统计指定目录下 磁盘总体占用 -s :总数 -h : 以K ,M G为单位

du --max-depth=1 -h 【指定目录】 统计指定目录下 各个目录占用情况

redis

注册windwos服务:

redis-server.exe --service-install redis.windows.conf --loglevel verbose

​ 卸载服务:redis-server --service-uninstall

​ 开启服务:redis-server --service-start

​ 停止服务:redis-server --service-stop

安装成功后去服务界面启动 “Redis” 这个服务就可以了。

启动服务时需要将打开的redis(redis-server redis.windows.conf) 服务端窗口关闭。 如服务启动不成功可参考


linux 安装 redis

1.下载tar包 并解压

2.进入安装目录 执行 make

3…/redis-server redis.conf 启动

1.ps -aux | grep redis 2.ll /proc/5393/cwd 查看 redis 目录

./redis-server   redis.conf  启动

./redis-cli -h 127.0.0.1 -p 6379

auth “密码” 授权访问redis ( auth tianqueshuaige123)

select index :切换redis数据库

flushdb:清空所有的key

zookeeper

ps -aux | grep ‘zookeeper’

查看 zookeeper 的端口号命令 netstat -anp|grep 2181

启动 ||停止||查看 ./zkServer.sh start || stop ||status [myzoo.cfg]] &

Linux 修改了jdk之后,不生效问题
1.安装jdk1.8。
2.修改/etc/profile中的JAVA_HOME为新的jdk路径,并执行source /etc/profile。
3.执行 java -version,这个时候显示jdk还是1.7版本。
4.执行:

which java
which javac
将以上两条指令执行结果中的java、javac文件删除。
5.执行:

ln -s $JAVA_HOME/bin/java /usr/bin/java
ln -s $JAVA_HOME/bin/javac /usr/bin/javac
6.执行:

source /etc/profile
7.执行java -version,即可看到jdk切换为1.8版本。

注:
1.如果执行报错java文件没有权限,就先给java文件设置一下权限:chmod u+x java。

2.jdk 11 没有jre 可以进入 /jdk11/bin/ 执行 sudo ./jlink --module-path jmods --add-modules java.desktop --output …/jre

nginx

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 启动

./nginx -t测试配置文件修改是否正常
./nginx -s reload 重新加载

sudo ./nginx -s reload //没有加载权限的情况下 采用此方式重新加载

memcache

memcached -d -m 50 -p 11211 -u root 启动

-d:启动一个守护进程,
-m:分配给Memcache使用的内存数量,单位是MB,默认是64MB,
-u:运行Memcache的用户
-l:监听的服务器IP地址
-p:设置Memcache监听的端口,默认是11211注:-p(p为小写)
-c:设置最大并发连接数,默认是1024
-P:设置保存Memcache的pid文件注:-P(P为大写)
-h 显示帮助

telnet ip11211 连接服务端
flush_all 清除缓存

ctrl+] quit 退出连接

kafka

nohup ./bin/kafka-server-start.sh ./config/server.properties & 启动

查看进程和端口:

根据进程pid查端口:lsof -i | grep pid

根据端口port查进程:lsof -i:port

根据用户查看进程和端口号:lsof -i|grep user

netstat命令根据进程pid查端口:netstat -nap | grep pid

 根据端口port查进程 netstat -nap | grep port

防火墙

查看防火墙状态 firewall-cmd --state
开启防火墙:firewall-cmd start
防火墙重启:firewall-cmd --reload
#查看防火墙规则(只显示/etc/firewalld/zones/public.xml中防火墙策略)
firewall-cmd --list-all-zones

参考地址:https://www.cnblogs.com/shawhe/p/9485746.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值