欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux实用命令

程序员文章站 2022-11-09 23:03:10
Linux实用命令 关于Linux中单双引号的区别: 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的; 双引号里可以有变量,双引号里可以出现转义字符 反引号param=`date`,命令替换,将命令的标准输出赋值给变量,同$(date) 命令返回值 0 :执行成功(即正常执行,并返回预 ......

linux实用命令

 

 

关于linux中单双引号的区别:

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;
  • 双引号里可以有变量,双引号里可以出现转义字符
  • 反引号param=`date`,命令替换,将命令的标准输出赋值给变量,同$(date)

 

命令返回值

  • 0 :执行成功(即正常执行,并返回预期结果)
  • 非0 :执行失败
  • $? 代表上一个命令执行后的退出状态,也代表调用函数的返回值
  • echo $?  查看返回值

 

ls

 

列出当前目录下所有文件

 

find

 

在指定目录下查找文件

 

-l

详细文件信息

 

 

-name

文件名

 

-t

修改时间排序

 

 

-iname

文件名,忽略大小写

 

-r

逆序排列

 

 

-type

d 文件夹、f 文件

 

-h

可读的文件大小格式

 

 

常用用法

find . -name "abc"

 

-a

显示隐藏文件

 

 

 

 

 

常用用法

ls -ltr

 

 

 

 

 

 

 

 

 

 

 

locate

 

查找符合条件的文件(查数据库)

 

updatedb

 

更新locate命令所必需的数据库文件

 

-b

只查找文件夹

 

 

-v

显示执行的详细过程

 

-i

忽略大小写(默认不忽略)

 

 

常用用法

updatedb -v | less

 

注意事项

如果存在的文件查不到,updatedb

 

 

 

 

 

常用用法

locate abc aab (支持多关键词)

 

 

 

 

 

 

 

 

 

 

 

chmod

 

更改文件权限(读r w 执行x

 

chown

 

更改文件拥有者

 

777

rwx(r4 w2 x1)拥有者、群组、其他

 

 

-r

子目录同样生效

 

-r

子目录同样生效

 

 

user:group

使用者:群组

 

常用用法

chmod 777 test

 

 

常用用法

chown runoob:users file1.txt

 

 

 

 

 

 

 

diff

 

比较文件差异

 

ln

 

创建文件同步链接,默认硬链接(自动同步的文件)

 

-y

并列方式展示

 

 

-s

创建软链接(快捷方式)

 

-w

指定宽度(并列方式有效)

 

 

常用用法

ln -s a.txt b.txt

 

常用用法

diff a.txt b.txt -yw 50

 

 

 

 

 

 

 

 

 

 

 

less

 

浏览文件

 

vi/vim

 

编辑文件

 

常用用法

less a.txt

 

 

常用用法

vim a.txt

 

 

 

 

 

 

 

mv

 

移动文件 / 文件重命名

 

scp

 

远程文件拷贝(双向)

 

-f

覆盖同名文件时不提示

 

 

-p

保留原文件的时间和权限等

 

常用用法

mv aaa bbb

 

 

-r

递归复制整个目录,默认是不能复制文件夹的

 

 

 

 

 

常用用法

scp root@192.168.1.10:/root/a.txt  /tmp/a.txt

 

 

 

 

 

 

 

rm

 

删除文件,默认是不能删除目录

 

cp

 

拷贝文件,默认不能拷贝目录

 

-r

递归删除目录内的文件,删除目录

 

 

-r

递归拷贝目录内的文件,拷贝目录

 

-f

从不询问是否删除

 

 

-f

从不询问是否覆盖文件

 

-v

显示删除详情

 

 

-p

保留原文件的时间和权限等(常用)

 

常用用法

rm -rf test

 

 

常用用法

cp aaa.txt bbb.txt

 

 

 

 

 

 

 

tee

 

把数据打印到屏幕和文件中,类似>

 

touch

 

刷新文件的时间属性,文件不存在则创建

 

-a

追加到文件中,类似>>

 

 

常用用法

touch aa.txt

 

常用用法

echo abc | tee aa.log

 

 

 

 

 

 

 

 

 

 

 

read

 

标准输入(控制台输入),默认回车结束

 

grep

 

文件内查找字符串 / 筛选

 

-a

输入数组,空格分割

 

 

-i

忽略大小写,默认是不忽略

 

-d

设置结束符

 

 

-n

显示行号

 

-p

输入前显示内容

 

 

-r

递归子目录查找

 

-n

限制输入长度

 

 

-w

全词匹配

 

-s

输入时不显示,像输密码那样

 

 

常用用法

find . -name "*.java" | xargs grep "main" --color

 

常用用法

read str

 

 

 

grep "main" *

 

 

 

 

 

 

 

sed

 

操作文件,增删改查(脚本常用)

 

expr

 

将表达式的值印到控制台

 

-e

可以指定多个命令

 

 

计算

expr $arg1 + $arg2(中间的空格是必需的,不加空格是字符串)

 

-f

指定命令文件

 

 

字符串匹配

expr match "abcd" ".*bcd",只能从头匹配,返回匹配长度

 

-n

取消默认控制台输出,与p一起使用可打印指定内容

 

 

字符串长度

expr length "awefwe",返回长度

 

-i

输出到原文件,静默执行(修改原文件的意思)

 

 

字符串截取

expr substr "abscw" 2 3,返回bsc,下标从1开始

 

常用用法

sed 's/old/new/gi' test.txt

 

 

字符查找

expr index "abcd" "c",只能查找字符

 

 

 

 

 

变量赋值

param=`expr $arg1 + $arg2`  (``将标准输出赋值给变量)

 

 

 

 

 

 

 

let

 

操作变量(脚本常用)

 

ftp

 

连接ftp

 

let

let sum=age+3,不能有空格,变量不用加$

 

 

ftp ip

连接ftp服务器

 

let

let "sum = age + 3",同上,有空格需要加引号

 

 

ls

查看当前目录下的文件列表

 

不用let

sum=age+num,默认字符串操作,sum值为"age+num'字符串

 

 

pwd

查看当前目录的路径

 

 

 

 

 

cd

切换目录

 

 

 

 

 

get  a.txt

下载文件到当前目录(执行ftp ip的目录),自动覆盖

 

 

 

 

 

put a.txt b.txt

上传文件,自动覆盖

 

 

 

 

 

delete a.txt

删除文件

 

 

 

 

 

less a.txt

查看文件,同linux的less

 

 

 

 

 

?

查看各种ftp命令

 

 

 

 

 

 

 

df

 

显示文件系统的磁盘使用情况

 

du

 

显示文件夹所占空间大小

 

-h

可读的文件大小格式

 

 

-h

可读的文件大小格式

 

-a

显示所有文件系统

 

 

常用用法

du -h    或者   du -h /tmp/zzj

 

常用用法

df -h

 

 

 

 

 

 

 

 

 

 

 

mkdir

 

创建文件夹

 

pwd

 

显示当前目录的绝对路径

 

-p

父目录自动创建,用于创建多层文件夹

 

 

常用用法

pwd

 

常用用法

mkir -p /tmp/abc/ddd/test

 

 

 

 

 

 

 

 

 

 

 

stat

 

查看文件属性(创建时间、修改时间、权限修改时间等)

 

tree

 

以树状图列出目录的内容包括子目录里的文件

 

常用用法

stat test.txt

 

 

-a

绘图字符显示树状图(推荐)

 

 

 

 

 

-a

显示隐藏文件

 

 

 

 

 

-c

文件类型着色,便于区分

 

 

 

 

 

-f

显示完整文件路径

 

 

 

 

 

常用用法

tree -ac test

 

 

 

 

 

 

 

telnet

 

查看某个端口是否可以访问

 

ifconfig

 

显示或设置网络设备

 

常用用法

telnet  192.168.1.2  8080

 

 

常用用法

ifconfig eth0 down 关闭eth0网卡

 

 

 

 

 

 

ifconfig eth0 up 启动eth0网卡

 

 

 

 

 

 

ifconfig eth0 192.168.1.12 修改ip

 

 

 

 

 

 

 

netstat

 

显示网络状态

 

lsof

 

列出当前系统打开文件

 

-a

显示所有

 

 

-i

指定端口筛选程序

 

-n

域名转换为ip

 

 

常用用法

lsof -i:8080   查看8080端口程序

 

-p

显示进程pid / 进程名

 

 

 

linux环境下的任何事物都以文件的形式存在,例如:进程、网络连接等等都可以列出来

 

常用用法

netstat -anp | grep ":8080"    查看8080端口程序

 

 

 

lsof | grep vim | grep .swp   能查看当前正在编辑的文件和vim进程

 

 

端口不是独立存在的,它是依附于进程的。某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了。而不要纯粹的理解为关闭掉某个端口,不过可以禁用某个端口

 

 

 

 

 

 

 

 

 

 

 

wall

 

广播消息给所有在线用户(who命令可查看)

 

which

 

查看命令的绝对路径

 

常用用法

wall hello

 

 

常用用法

which ls

 

 

 

 

 

 

 

man

 

查看命令的说明手册

 

ping

 

检测主机的连通性

 

常用用法

man ls

 

 

常用用法

ping 192.168.1.1

 

 

 

 

 

 

 

who

 

查看当前活跃连接

 

write

 

发送消息给指定在线用户(who命令可查看)

 

常用用法

who /var/log/wtmp 查看历史连接

 

 

常用用法

write root pts/1

 

 

 

 

 

 

 

useradd

 

创建用户

 

userdel

 

删除用户

 

-m

创建用户主目录,默认在home目录下创建

 

 

-r

删除用户主目录

 

-m

不创建用户主目录

 

 

常用用法

userdel -r testuser

 

-d path

指定目录为用户主目录

 

 

 

 

 

-g

创建时指定用户群组

 

 

 

 

 

常用用法

useradd testuser

 

 

 

 

 

 

 

 

 

 

 

date

 

显示当前时间

 

finger

 

查看用户信息

 

-d str

显示指定字符串所描述的时间,而非当前时间

 

 

常用用法

finger root

 

-s str

将系统时间设为字符串中指定的时间

 

 

 

less /etc/passwd 能查看所有用户

 

-r file

显示指定文件的最后修改时间

 

 

 

less /etc/group 查看所有用户群组

 

常用用法

date

 

 

 

 

 

 

 

 

 

 

 

sleep

 

等待指定时间(s m分钟 h小时 d天)

 

 

 

 

 

常用用法

sleep 5s

 

 

 

 

 

 

 

 

 

 

 

groupadd

 

创建用户群组

 

groupdel

 

删除用户群组(只能删除空群组)

 

常用用法

groupadd testgroup

 

 

常用用法

groupdel testgroup

 

 

 

 

 

 

 

groupmod

 

修改用户群组

 

usermod

 

修改用户

 

-a user

groupmod -a user testgroup 将用户加入群组

 

 

-g group

usermod -g testgroup testuser 将用户加入群组

 

-r user

groupmod -d user testgroup 将用户移除群组

 

 

-d path

修改用户主目录

 

-g gid

groupmod -g 1234 testgroup 修改群组的gid

 

 

-u uid

usermod -u 123 testuser 修改用户的uid

 

 

 

 

 

 

 

id

 

查看用户的uid(用户唯一标识)、gid、所属群组

 

kill

 

关闭进程

 

常用用法

id testuser

 

 

-kill

强制杀死进程

 

 

 

 

 

-9

彻底杀死进程

 

 

 

 

 

常用用法

kill -9 pid

 

 

 

 

 

 

 

last

 

查看当前活跃连接和历史连接(类似who

 

logname

 

显示当前登录的用户名

 

常用用法

last

 

 

常用用法

logname

 

 

 

 

 

 

 

ps

 

显示瞬间进程的状态

 

top

 

显示实时进程的状态

 

-e

显示所有进程

 

 

-d 3

刷新周期,默认3秒

 

-f

显示全格式列表

 

 

常用用法

top

 

常用用法

ps -ef  显示所有瞬间进程信息

 

 

 

 

 

 

 

 

 

 

 

shutdown

 

关机

 

sudo

 

使用root用户执行命令(需要配置/etc/sudoers设置权限)

 

-r

立刻重启(推荐)

 

 

常用用法

sudo test.sh 使用root执行脚本(需要输入当前用户密码)

 

-h

立刻关机

 

 

与su区别

su root test.sh  也是使用root执行脚本(需要输入root密码)

 

-k

提示关机,但不会关机

 

 

 

 

 

常用用法

shutdown -r now

 

 

 

 

 

 

 

 

 

 

 

su

 

切换用户

 

w

 

查看自己当前的连接

 

 

su root ./test.sh  使用指定用户执行脚本

 

 

常用用法

w

 

 

su -c ./test.sh root 使用指定用户执行命令或脚本

 

 

 

 

 

常用用法

su - oracle

 

 

 

 

 

 

 

 

 

 

 

clear

 

清屏

 

alias

 

设置命令的别名(/etc/profile配置永久生效)

 

常用用法

clear

 

 

 

unalias lt 取消别名

 

 

 

&n

(0)
打赏 Linux实用命令 微信扫一扫

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

Linux实用命令
验证码: Linux实用命令
Copyright © 2017-2022  保留所有权利. 粤ICP备17035492号-1
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com