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

linux常用命令

程序员文章站 2024-01-25 15:17:28
大雨落幽燕, 白浪滔天, 秦皇岛外打鱼船。 一片汪洋都不见, 知向谁边? 往事越千年, 魏武挥鞭, 东临碣石有遗篇。 萧瑟秋风今又是, 换了人间。 Linux里常用的快捷键,在终端里操作 Ctrl Shift + 放大字体 Ctrl 缩小字体 Ctrl Shift t 在同一终端下打开新页签 Alt ......

大雨落幽燕,
白浪滔天,
秦皇岛外打鱼船。
一片汪洋都不见,
知向谁边?

往事越千年,
魏武挥鞭,
东临碣石有遗篇。
萧瑟秋风今又是,
换了人间。

Linux里常用的快捷键,在终端里操作
Ctrl Shift + 放大字体
Ctrl - 缩小字体
Ctrl Shift t 在同一终端下打开新页签
Alt n n代表切换到第几个页签
Ctrl l 清屏,相当于clear命令
Ctrl u 删除光标到命令提示符直接的所有字符
Tab 自动补全(命令、目录和文件名)
Linux里的特殊符号
/ 代表根目录
~ 代表当前用户的家目录,即root目录
.文件名 代表隐藏文件
. 用在目录路径里面,代表当前目录
.. 用在目录路径里面,代表上一级目录

  •     用在目录路径里面,代表上一次所在目录
         往文件末尾追加内容
          覆盖并替换原文件内容

    | 把前一个命令的输出结果,作为下一个命令的输入
    Linux命令格式,严格区分大小写
    命令 [选项/参数] 目录/文件名
    ls 以列表形式查看目录里的文件
    ls 不跟选项/参数和目录,表示查看当前目录下的文件
    ls –l 列出当前文件的详细信息,简写为:ll
    ls –a 列出目录中的所有文件,包括以“.”和“..”开头的文件
    ls –A 列出除了以“.”和“..”开头的文件
    ls –l –h 表示以人类能读懂的形式列出文件的详细信息,简写:ls –lh 或 ll –h
    cd 进入目录(文件夹)
    格式:cd 目录路径 进入指定的路径目录
    cd 后面不跟路径,表示切换到当前用户的家目录
    cd - 表示切换到上一次所在目录
    pwd 查看当前目录的绝对路径
    man 详细的官方文档
    man 命令,例如:man ls
    PgDn下翻,PgUp上翻,j下一行,k上一行
    退出:q

info 简单的说明文档
info 命令,例如:info ls
PgDn下翻,PgUp上翻
退出:q,或者Ctrl c

--help 查看命令的选项
命令 --help,例如:ls --help
mkdir 创建空目录
在root目录下创建portos2
1)绝对路径:以根目录开头的路径,就是绝对路径,例如:mkdir /root/portos2
2)相对路径:从当前目录开始的路径,以.或..开头的路径,例如:mkdir ./portos4
同时创建多个同级的空目录:mkdir portos6 portos7
同时创建多个层级的空目录:mkdir -p portos8/portos9
tree 不跟路径,表示查看当前目录的树状结构
touch 创建文件或(更新文件/文件夹的最后修改时间(文件/文件夹存在))
touch file1 如果file1不存在,那么新建file1文件
touch file1 如果file1存在,那么将修改file1文件的最后修改时间
touch file2 file3 file4 如果这些文件不存在,那么将同时创建file2,file3,file4
touch -t 201709101212.12 file1 -t选项使用指定的时间值 time 作为指定文件 file 相应时
间戳记的新值.此处的 time 规定为如下形式的十进制数∶
[[CC]YY]MMDDhhmm[.SS]
rmdir 删除空目录
rmdir dir2 删除空目录dir2
rmdir -p dir1/dir2 如果目录由多个路径名组成,从最后一个路径名开始依次删除,直到所有
的路径名都被删完。
rm 删除文件或目录(remove)
rm file4 删除file4文件
rm -f file3 强制删除file3文件不提示
rm -rf dir2 强制删除dir2目录及里面的所有文件和子目录
rm -rf / 在项目组里禁用
cp 复制文件或目录
格式:cp [-选项] 源文件或目录 目标目录
cp file1 dir1 将file1文件复制到dir1目录中
cp -r dir2 dir1 将dir2整个目录和子目录复制到dir1目录中
\cp -rf dir2 dir1 表示强制复制dir2目录至dir1目录中
-f失效原因:默认cp是有别名的(alias cp=’cp -i’),无法强制覆盖而没有提
示,临时取消别名用,如果想永久取消别名:unalias cp,也可以通过
alias cp=’cp -i’添加别名
cp file1 dir1/file3 将file1文件复制到dir1目录中并改名为file3
mv 移动/剪切文件或目录(move)
格式:mv [-选项] 源文件或目录 目标目录
mv file2 dir2 将file2文件移动至dir2目录中
mv dir3 dir2 将dir3整个目录移动至dir2目录中
mv dir4 dir2/dir5 将dir4目录移动至dir2中,并改名为dir5
Day2
1、使用远程连接工具CRT
ifconfig 查看Linux IP地址
ifconfig 网卡名称 查看指定网卡的信息
ifconfig -a 查看当前全部网卡信息

2、如果需要本机的物理机和虚拟机进行连接,则可以使用NAT模式,Linux系统设置为自动获取IP方式;如果想要自己的服务器属于公网情况下,则使用桥接模式,Linux系统设置为手动获取IP方式

3、setup设置Linux系统相关配置
firewall configuration 配置防火墙相关内容(外界访问虚拟机,一定要关闭防火墙)
SELinux也关闭
network configuration 网络配置
USE DHCP:默认是自动获取IP地址
如果是桥接模式,则需要手动修改IP地址,分配一个唯一的IP地址
│ Name eth0________________ │
│ Device eth0________________ │
│ Use DHCP [ ] │
│ Static IP 192.168.0.58________ │
│ Netmask 255.255.255.0_______ │
│ Default gateway IP 192.168.0.1_________ │

4、设置完成之后,需要重启网卡,才能生效:service network restart

5、ping IP地址 查看两台电脑之间的数据传输是否可以通,在Linux里按Ctrl c终止运行
6、在SecureCRT 中主机名:输入虚拟机IP地址,以及用户名:root帐号和密码,即可实现
远程登录服务器
编辑文件
gedit Linux图形界面编辑器
nano 编辑器

vim 编辑器
vim 文件名 如果文件不存在,会创建文件并进入vim编辑器
vim三种模式(命令模式,插入模式/编辑模式,底行模式/末行模式)

命令模式(光标可以通过kjhl上下左右移动)
gg 光标跳转到文件内容的第一行的首字符
ngg 光标跳转到文件内容的第n行首字符
G 光标跳转到文件内容的最后一行的首字符
nG 与ngg效果相同
$ 光标跳转到本行的尾字符
^ 光标跳转到本行的首字符
0(数字0) 与^效果相同
yy 复制本行内容
p 粘贴到当前行的下一行
nyy 从当前行开始向下复制n行
np 在当前行的下一行下粘贴n次
dd 剪切/删除本行
ndd 剪切/删除n行(包括当前行及以下行)
u 撤销刚才的粘贴、删除操作
Ctrl r 恢复撤销操作
x 剪切/删除当前行当前光标的一个字符
nx 删除当前行当前光标后的n个字符,包括当前光标的字符,如果字符不够,删除到末尾
w 以单词为单位,光标跳转到下一个单词的首字符
e 以单词为单位,光标跳转到下一个单词(包括当前单词)的最后一个字符
b 以单词为单位,光标跳转到上一个单词(包括当前单词)的首字符
/查找的内容 搜索需要查找的内容,按n向下查找,shift n向上查找,区分大小写
?查找的内容 效果同上,有一些特殊字符不能查询如:$^.
Ctrl b 上翻,同PgUp
Ctrl f 下翻,同PgDn

插入模式/编辑模式(都要Esc到命令模式下)
i 在当前字符前插入,insert
I(大写的i) 在当前行行首插入
a 在当前字符后插入,after
A 在当前行行尾插入
o 在当前行下一行插入
O 在当前行上一行插入
s 删除当前字符插入
S 删除当前行插入
r 替换当前字符
R 替换(覆盖)当前光标位置及后面的若干字符,输入多少就替换多少
cw 替换词,即删除光标位置及以后的词,并进入编辑模式

底行模式/末行模式(在命令模式下)
:w 保存
:q 退出
:q! 强制退出,不保存更改内容
:wq 保存并退出
:w 文件名 表示另存为文件名或新建文件名
:set nu 显示行号
:set nonu 不显示行号
:n 移动光标到第n行首字符
:s/所替换的字符jingle/替换的新字符 666 把文档光标所在行的首个jingle替换成666
:s/所替换的字符jingle/替换的新字符 666/g 把文档光标所在的行的所有jingle替换成666
:%s/所替换的字符jingle/替换的新字符666 把文档所有行的首个jingle替换成666
:%s/所替换的字符jingle/替换的新字符666/g 把文档所有行的jingle替换成666
:m,ns/所替换的字符jingle/替换的新字符 666/g 把文档第m到n行的jingle替换成666
:m,ns/所替换的字符jingle/替换的新字符 666 把文档第m到n行的首个jingle替换成666
转义字符,不对它进行识别,也不进行处理
./\等字符都需要转义
echo 文字 把该文字打印在终端
echo 所要追加的文字 >> file 表示往file文件末尾追加文字内容,如果file不存在,
那么会自动创建该文件,并追加文字内容至file文件中
echo 所要追加的文字 > file 表示对该文件内容进行覆盖并替换,如果file不存在,
那么会自动创建该文件,并追加文字内容至file文件中
查看文件内容(7种方法)
cat 文件路径/文件名 查看文件从第一行到最后一行,并打印在终端
cat –n文件路径/文件名 -n显示行号
cat file1 file2 把file1和file2文件内容连接起来并打印在终端
cat file1 file2 > file3 把file1和file2文件内容连接起来并追加覆盖到file3中
如果file3不存在,则自动创建

tac文件路径/文件名 查看文件从最后一行到第一行,并打印在终端

head文件路径/文件名 默认查看文件前10行内容,并打印在终端
head –n 15 文件路径/文件名 查看文件前15行内容,并打印在终端
head –n -15 文件路径/文件名 查看文件除了最后15行以外的内容,并打印在终端

tail 文件路径/文件名 默认查看文件最后10行内容,并打印在终端
tail –n 15 文件路径/文件名 查看文件最后15行内容,并打印在终端
tail –n -15 文件路径/文件名 无此用法,结果同上

more文件路径/文件名 分页显示,一次性显示一页
回车翻一行
空格翻一页,且只能一直下翻,不能上翻
中途退出,按:Ctrl c
more -5 文件路径/文件名 表示每页显示5行
more +5 文件路径/文件名 表示从第5行(包括第5行)开始显示

less 文件路径/文件名 分页显示,一次性显示全部内容
可以用PgUp上翻,PgDn下翻,也可以空格和回车,k上翻一行,j下翻一行
可以通过/xxxxxxx,进行查找
退出less模式,按:q

sed 查看文件指定行的内容
sed –n ‘5,8p’ 文件路径/文件名 查看文件第5行至第8行内容(p表示打印在终端)
sed –n –e ‘5p’ –e ‘8p’ 文件路径/文件名 查看文件第5行和第8行内容(-e表示连接行内容)
sed –n ‘5p’ 文件路径/文件名 查看文件第5行内容
grep 搜索文件中匹配某个模式的整行,打印到终端
格式:grep 要搜索的内容 文件路径/文件名 –n 搜索符合搜索内容所在的整行(-n显示行
号),并打印在终端
grep ^For 文件路径/文件名 –n ^For表示整行首字符以For开头
grep say$ 文件路径/文件名 –n say$表示以say结尾的行
find 查找文件或目录
格式:find 文件路径 –name ‘文件名/目录’ 通过文件名进行查找
例如:find / -name 'file1' 递归的查找根目录里所有的file1文件
支持通配符

  •                                 匹配0个或多个任意字符
    ? 匹配1个字符

find文件路径 –size +30M 查找大于30M的文件
find文件路径 –size -30M 查找小于30M的文件
find文件路径 –size 30M 查找等于30M的文件

查看文件的大小:ll –h 文件路径/文件名
查看占用磁盘大小:du –sh 文件路径/文件名 -s表示每个参数只显示总和
-h表示一个单位:k,M
wc (word count)计算文件内容的行数,字节数,字符数,单词数
wc –l 文件路径/文件名 计算行数
wc –c 文件路径/文件名 计算字节数:一个汉字占3个字节
wc –m 文件路径/文件名 计算字符数:一个字母或汉字占一个字符
wc –w 文件路径/文件名 计算单词数
注意:Linux里是UTF-8编码,空格是一个字符,每一行还有一个换行符
可以通过echo $LANG 命令查看当前使用的语系和编码
管道| (把前一个命令的输出结果,作为下一个命令的输入)
cmd1|cmd2|cmd3
先执行cmd1,把cmd1的标准输出作为cmd2的标准输入,再执行cmd2,把cmd2的输出,
作为cmd3的输入,再执行cmd3
例如:统计根目录下所有包含’file’名称的文件或目录的个数:find / -name 'file'|wc –l
例如:查找file文件中以For开头且以you结尾的行数:grep ^For file1|grep you$|wc -l
Day3
文件权限
文件类型/权限 硬连接数 文件拥有者 文件拥有组 文件大小 最后修改时间 文件(夹)名
drwxr-xr-x 3 root root 4096 Oct 10 16:52 dir1

drwxr-xr-x
第一位:文件类型

  •                     普通文件
    d 目录(directory)
    l 连接文件(link)
    c 字符设备(character)
    b 块设备(block)
    s 套接字(socket)
    p 管道(pipe)

drwxr-xr-x
第二位到第十位
第一组 拥有者权限:rwx
r 读read 4
w 写write 2
x 执行execute 1
第二组 拥有组权限:r-x
第三组 其他用户权限:r-x

第一种方法:修改文件权限
chmod [u/g/o/a] [+/-/=] [r/w/x] 文件路径/文件名
u user拥有者
g group拥有组
o other其他用户
a all所有人
尽量按照rwx授权
例如:chmod u-w,g+wx,o=w file1 +表示增加权限,-表示撤销权限,=表示只赋予该权限

第二种方法:修改文件权限
chmod 777 file1 表示对文件/目录的三组用户都授予rwx权限
rwx 7
rw- 6
r-x 5
r-- 4
-wx 3
-w- 2
--x 1
--- 0
chmod -R 777 dir1 -R表示递归授权目录及子目录中的所有文件相同权限
chown 修改拥有者和拥有者
只修改拥有者 chown 拥有者名字 文件路径/文件名
只修改拥有组 chown :拥有组名字 文件路径/文件名
两个一起修改 chown拥有者名字:拥有组名字 文件路径/文件名

chown -R portos:portos dir2 -R表示递归授权目录及子目录中的所有文件相同权限
创建用户:useradd 用户名
查看用户:ls /home
设置密码:passwd 用户名

临时切换用户:su 用户名
退出:exit
在Linux里面超级管理员是:#,普通用户是:$符号
who am i 查看当前登录用户的详细信息
whoami 查看当前用户
who 查看当前登录本机用户的详细信息

彻底删除用户信息:userdel –r 用户名
压缩包管理:包(.tar)、压缩文件(.gz)、压缩包(.tar.gz或.tgz)

包的管理
tar命令
-c 创建一个包文件,create,打包
-x 解开一个包文件,extract,解包
-t 查看包文件里面的文件
注意:在c/x/t选项中,只能同时出现一个!

-v 显示打包过程文件
-f 指定包的名称,要注意,在f之后立即接包名,不能加其他选项
-r 附加到存档结尾
-C 转到指定目录
-z 用gzip格式对存档压缩或解压
-j 用bzip格式对存档压缩或解压

打包格式
tar –cvf 包的名字.tar 文件1 目录1 文件2 目录2
例如:tar -cvf baoming.tar file4 file5 打包后源文件仍然存在

查看包内文件信息
tar –tvf 已经打好的包名
例如:tar -tvf baoming.tar

追加文件或目录至包中
例如:tar -rvf baoming.tar dir1 file6

解包
例如:tar -xvf baoming.tar -C dir3 解包后原包仍然存在
压缩文件管理 压缩文件一般以.gz结尾
gzip 命令
-d 将压缩文件解压
-r 递归式的查找指定目录并压缩其中的所有文件
-num 用指定的数字num调整压缩的速度,-1或--fast表示最快的压缩方法(压缩比高,
压缩率低),-9或--best表示最慢的压缩方法(压缩比低,压缩率高),默认为6
-l 显示每个压缩文件的如下字段:
compressed:压缩文件大小
uncompressed:未压缩文件大小
ratio:压缩比
uncompressed_name:未压缩文件的名字
压缩文件:会自动生成文件名后缀.gz

压缩文件格式
gzip [选项/参数] 文件名 目录名
压缩文件
例如:gzip file3 file4 可以没有选项,不用起压缩文件名,直接写需要压缩的文件,压
缩后源文件不存在,会自动生成.gz的后缀文件

例如:gzip -r dir2 递归式的查找指定目录并压缩其中的所有文件

查看压缩文件信息
例如:gzip -l file3.gz

解压缩
gzip -d file3.gz file4.gz 压缩文件消失,默认解压到当前目录
压缩包管理
先打包,再压缩(.tar.gz)
tar –cvf 包的名字.tar 文件1 目录1 文件2 目录2
gzip [选项/参数] 包名

tar命令和gzip命令结合(.tar.gz或.tgz)
-z 用gzip格式对存档压缩或解压
创建压缩包
tar –czvf 包的名字.tar.gz 文件1 目录1 文件2 目录2

查看压缩包
例如:tar -tzvf yasuobao.tar.gz

解压缩包
例如:tar -tzvf yasuobao.tar.gz –C dir5

tar命令和bzip命令的结合(.tar.bz2)
-j 用bzip格式对存档压缩或解压
创建压缩包
tar –cjvf 包的名字.tar.bz2 文件1 目录1 文件2 目录2

查看压缩包
例如:tar -tjvf yasuobao.tar.bz2

解压缩包
例如:tar -tjvf yasuobao.tar.bz2 –C dir5
进程管理
程序:可执行的文件
进程:程序执行一次的过程

Linux操作系统为每一个进程都分配一个唯一的id,称为pid
查看进程:ps
例如:ps –aux
-a : 显示现行终端机下的所有进程,包括其他用户的进程;
-u :以用户为主的进程状态 ;
-x :通常与 a 这个参数一起使用,可列出较完整信息。
结束进程:kill
例如:kill -9 pid 强制结束进程号为pid的进程
top 动态显示进程及内存使用情况
free 查看系统内存使用情况
netstat 查看开放端口的具体进程和用户
lsof 查看系统打开的文件,这里的”文件”包括/proc文件、磁盘文件、
网络IO等
shutdown 关闭/重启系统
shutdown –r now 立即重启
shutdown –r 5 5分钟后重启
shutdown –h now 立即关机
shutdown –h 17:30 指定时间关机(当天内)
Ctrl c 取消
Linux下环境搭建
总结命令如下(共46个)
系统关机/重启:shutdown
文件和目录:ls,cd,mkdir,rmdir,touch,rm,cp,mv,vim,echo,cat,tac,head,tail,more,less,sed,wc
权限安全:chmod,chown
用户相关:useradd,passwd,userdel,su
搜索查找:find,grep
文件打包压缩:tar,gzip
信息显示:du,ps,kill,top,free,netstat,lsof
帮助文档:man,info
其他:pwd,tree,ifconfig,setup,service,ping,rpm,ntsysv