Linux命令

Linux路径分为两种:

1、绝对路径

以根目录/为开头,表示从根目录一层一层的往下找

2、相对路径

当前目录为起点,开始找,其中用.表示当前目录,用..表示上一层目录

  • 查看当前所在目录pwd

  • 显示当前文件夹下的所有内容ll

  1. 以-开头,是普通文件
  2. 以d开头,是文件夹

除了ll之外还有几个查看文件的命令

ls,查看文件的内容(只显示名称)

如果文件/文件夹的名称以.开头的,则表示是一个隐藏文件
如果想要查看隐藏文件使用命令ll -a或者ls -a

  • 树状图查看当前下的所有文件tree

  • 创建文件夹
    mkdir 文件夹路径
    比如:在/home目录下创建oracle文件夹
mkdir /home/oracle

创建多层文件夹mkdir -p
比如说:想在/home中创建A,然后在A里面创建B,在B里面创建C
如果文件夹已存在则不创建

mkdir -p /home/A/B/C
  • 创建文件
    touch 文件路径
    比如:在/home目录下创建a.txt 文件
touch /home/a.txt

如果创建的文件已存在,则表示更新文件的修改时间

  • 切换路径
    cd 路径
    比如:切换到/home目录中
cd /home
  • 清屏命令clear

清除屏幕的所有内容

  • 用来路径补全功能tab键

  • 查linux内核版本号uname -r

  • 终止命令 crtl + c

  • 查看IP的命令 ifconfig

  • 查看与对方的网络是否连通 ping IP地址

  • 删除文件/文件夹rm -rf 文件名或文件夹名

想删除当前文件夹下的a.txt

rm -rf ./a.txt

删除当前文件夹下的test文件夹

rm -rf ./test
  • 复制文件/文件夹cp -R 源文件路径/源文件名 目标路径

将当目录下的a.txt 复制到当前目录下abc目录中

cp -R ./a.txt ./abc

将当目录下的a.txt 复制到当前目录下abc目录中并且重命名为b.txt

cp -R ./a.txt ./abc/b.txt
  • 移动/剪切文件mv 源文件路径/源文件名 目标路径

将当目录下的a.txt 移动到当前目录下abc目录中

mv ./a.txt ./abc

将当目录下的a.txt 移动到当前目录下abc目录中并且重命名为b.txt

mv ./a.txt ./abc/b.txt
  • 查看日期cal

  • 查看时间date

  • 修改系统时间date -s "2013-03-23 16:36"

  • 查磁盘信息df -h

  • 查看可用内存free -m

  • 动态查看系统资源 (默认是5秒刷新一次,相当于windows的资源管理器)top

  • 查看有哪些用户登录了系统who

导入与追加

导入 >

语法:命令 > 文件路径
作用:将前面命令的输出内容,导入到后面的文件中(若文件不存在,则新建该文件)

比如:将IP信息导入到当前目录中的a.txt

ifconfig > ./a.txt

追加 >>

语法:命令 >> 文件路径
作用:将前面命令的输出内容,追加到后面的文件中(若文件不存在,则新建该文件)

比如:将IP信息追加到当前目录中的a.txt

ifconfig >> ./a.txt

区别:导入符会先清空文件原有的内容,而追加符会在文件原来的内容最后进行添加

  • 统计文件的行数 wc -l 文件名

比如:统计当前目录下a.txt文件行数

wc -l ./a.txt

查看文件命令

  • 查看文件的全部内容cat 文件路径

比如:查看当前目录下的a.txt

cat ./a.txt
  • 查看文件的全部内容,并且显示行数cat -n 文件路径

比如:查看当前目录下的a.txt并显示行数

cat -n ./a.txt
  • 分页/翻页查看文件
  1. more 文件名
  2. less 文件名

分页查看当前目录下的install.log文件

more ./install.log
less ./install.log

共同点:使用回车表示下一行,空格表示下一页,q表示退出
区别:less可以使用上下键翻行的阅读

  • 查看文件的前几行

head -n 文件名注意:n是表示具体行数

比如:查看当前目录下的install.log文件的前20行

head -20 ./install.log
  • 查看文件的后几行

tail -n 文件名注意:n是表示具体行数

比如:查看当前目录下的install.log文件的后15行

tail -15 ./install.log
  • 实时/动态查看文件tail -f 文件名

比如,实时查看a.txt

tail -f ./a.txt
  • 自定义变量:export 变量名="变量值"

比如:定义一个变量name 给其赋值为"张三"

export name="张三"
  • 输出变量的值echo $变量名

比如:想输出变量name的值

echo $name
  • 查找linux或者windows下所有的端口netstat -an

  • 查看系统正在运行的所有进程ps -ef

  • 从输出的内容中查找指定的内容,用 "管道: |" 和 grep 命令

语法:命令 | grep 查找内容

比如:从install.log中查找python的关键字

cat ./install.log | grep python

比如:查看oracle的进程

ps -ef | grep oracle

比如:查看1521的端口

netstat -an | grep 1521
  • 强制终止进程kill -9 pid
kill -9 进程号

根据文件名查找文件

语法:find 路径 -name 文件名

比如:在/root目录中,查找install.log文件

find /root -name install.log

比如:在/root目录,查找文件后缀是.txt的文件

find /root -name '*.txt'

比如:在/root目录,查找文件名以python开头的文件

find /root -name 'python*'

比如:在Linux中查找文件以.py结尾的文件

find / -name '*.py'

打包压缩管理

  • gzip

压缩:对单个文件进行压缩gzip 文件名
注意:只能对单个文件进行压缩,压缩后的后缀名为.gz,压缩之后,原来的文件就不存在了。

比如:将当前目录下的python.txt进行压缩

gzip ./python.txt

压缩之后,会产生新的压缩文件,python.txt.gz

解压:对gz的压缩包进行解压gzip -d 压缩包名称
注意:解压后,原来的压缩包就不存在了。

比如:对/root目录中python.gz进行解压

gzip -d /root/python.gz
  • tar

压缩:针对文件夹或文件进行打包并压缩可以使用tar命令,语法tar -czvf 包名 被打包的内容
注意:tar命令针对的通常是后缀名为.tar.gz的包

比如:将/root目录下的test文件夹进行打包并压缩

tar -cvzf ./test.tar.gz /root/test

把当前目录下的LINUX目录,打包到当前目录下的redhat中,并取名为a12345.tar.gz

tar -czvf ./redhat/a12345.tar.gz ./linux

压缩:对.tar.gz的压缩包解压的语法tar -xzvf 压缩包

比如:将当前目录下的a.tar.gz解压

tar -xzvf ./a.tar.gz

如果想指定路径解压tar -xzvf 压缩包 -C 指定的路径

比如:将当前目录下的a.tar.gz解压到/home目录中

tar -xzvf ./a.tar.gz -C /home

将文件上传的linux服务器
命令:rz

把文件下载到本地:
命令:sz 文件名

针对windows平台下的zip压缩包的解压命令unzip -d 目标路径 待解压文件
比如:将当前目录下的windows.zip解压到当前目录下的test文件夹中

unzip -d ./test ./windows.zip

远程操作

  • 远程访问ssh 用户名@访问的Linux的IP地址

比如:想要用test用户登录上192.168.4.125

ssh test@192.168.4.125

退出登录logout

  • 远程复制文件(夹)scp -r 用户名@被访问的机器的IP:/被复制的文件的路径 目标路径注意:尽量使用绝对路径

比如:想将192.168.4.114上/root/code2.py 文件复制到自己本地/home目录中

scp -r root@192.168.4.114:/root/code2.py /home

用户

  • 添加用户,语法:useradd 用户名

增加一个test用户

useradd test
  • 设置密码,语法:passwd 用户名

给test用户设置密码

passwd test

如果只给自己修改密码则输入命令passwd即可

修改自己的密码

passwd
  • 切换用户,语法:su 用户名

切换到test用户

su test

权限设置

  • 了解权限的构成
    Linux权限分为三部分构成分别是:文件拥有者的权限、文件同组用户的权限和其他用户的权限
    而每一部分的权限又是由读、写、执行三个组成。

其中文件拥有者用u表示,同组用户用g表示,其他用户用o表示。
权限中,读用r表示,写用w表示,执行用x表示

比如一个文件的权限如下,文件的拥有者有:可读可写可执行权限,同组用户只有一个可写,其他用户无权限。rwx-w----

  • 修改权限,语法:chmod -R 权限 文件

  • 权限表达方式

  1. +表示增加权限,用-表示去掉权限,用=表示设置成什么权限

比如:将./a.txt 文件的拥有者权限修改为可读可执行,同组用户去掉执行权限,其他用户权限增加一个可读

chmod -R u=rx,g-x,o+r ./a.txt

比如:将./a.txt文件的给全体用户(a)增加一个可读权限

chmod -R a+r ./a.txt
  1. 用数字表示,4表示可读,2表示可写,1表示可执行

比如:一个文件权限如下,文件的拥有者为可读可写可执行,同组用户可写可执行,其他用户可读
那么文件的拥有者权限就是7(4+2+1),同组用户权限3(2+1),其他用户4(4)
也就是说我们可以称这个文件权限为734

那么,如果想修改一个文件权限修改为文件的拥有者为可读可写可执行,同组用户可写可执行,其他用户可读
我们可以使用命令

chmod -R 734 文件名

Vi编辑器

三种模式:命令模式、编辑模式、末行模式

模式切换:

  1. 从命令模式切换到编辑模式使用(i,a,o)
  2. 从命令模式切换到末行模式使用(shift+:)
  3. 从编辑模式到命令模式使用(ESC)
  4. 从末行模式到命令模式使用(ESC)

末行模式常用操作:

  1. :wq保存加退出
  2. :nn表示行数,跳转到指定行
  3. :q!不保存退出

命令模式下的命令:

  1. 删除一行,光标所在行dd
  2. 删除一个字符x
  3. 字符串搜索/搜索字符查找下一个,按n, 向下查找。如果向上查找,按N。
  4. 复制yy
  5. 粘帖p
### 网络服务命令:

1. 开启网络服务`service network start`
1. 关闭网络服务`service network stop`
1. 重启网络服务`service network restart`

### 安装软件命令

`rpm -ivh 安装文件名`

动态查看文件`tail -f 文件名`

### 杀死进程`kill -9 进程号/pid`

需要先通过`ps -ef | grep `查找出你需要杀死的进程号,注意第二列是进程号

![](https://img2018.cnblogs.com/blog/886931/201910/886931-20191030162329760-733437847.png)

然后再根据进程号`kill -9 PID`来强制终止一个进程

posted on 2019-10-29 18:10  一位优秀的电工  阅读(273)  评论(0编辑  收藏  举报

导航