Linux基础命令一[基本命令、vi命令]

1.man:查看命令帮助。按q退出。
2.pwd :查看当前路径。
3.ls [-ldatr] :查看文件夹内容。 llls -laF的别名。

示例:
ls -l 列出文件的详细属性:d表示该文件是目录,- 表示该文件是一个文件。
ls -a 查看所有文件,包括以 .(点)开头的隐藏文件。
ls -ld /etc 查看文件夹etc的详细属性。

4.touch:创建不存在的新文件或更新已存在文件的时间。
5.cd:切换目录。
6.mkdir [-p]:创建文件夹,-p参数创建多级目录。
7.rmdir:删除空文件夹。
8.rm -rf:删除目录和文件,加-rf参数表示不需要确认强制删除(谨慎使用)。
9.cp [-ra]:复制,-r参数表示复制目录,-a表示复制所有属性。

示例:
1.cp a.txt b/ 将文件a.txt复制到b目录下
2.cp -r a/ b/ 将目录a复制到目录b下面。

10.mv:移动文件或重命名。
11.cat :查看文件内容。
12.more :逐页查看文件内容,按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示。

13.less:逐页查看文件内容,可以使用 [pageup] [pagedown] 等按 键的功能来往前往后翻看文件,更容易用来查看一个文件的内容。

14.head:查看文件的前几行,如:head -5 a.txt。
15.tail [-f]:查看文件的后几行,如tail -5 a.txt, -f参数表示动态查看文件的后几行。
16.du [-sh]:查看文件或文件夹所占空间的大小。

示例:
1.du -sh /etc –查看etc文件夹所占大小 。
2.du -sh /etc/* –查看etc下的所有子文件和子文件夹的大小。

17.grep [-ivnABR]:查找文件里面符合条件的行。 -i 忽略大小写 -v 取反。

示例:
grep “root” /etc/passed
在passwd文件中查找包含root的行。

18.find:在目录中查找符合条件的文件或文件夹。

  • 参数: -name: 按名称查找。-type: 按类型查找。 -cmin n :对文件状态的最近一次修改是在 n 分钟之前。

示例:
1.find /etc/ -name “*config” 按名称查找以config结尾的文件。
2.find /etc/ -cmin 10 查找在十分钟之前修改或创建的文件。
3.find . -name “*config” 在当前目录中按名称查找以config结尾的文件。 点(.)代表当前目录,.(点)可以省略,不加的话默认在当前目录中查找。

19.vi/vim命令
三种模式:
①命令行模式 [vi 文件名称 直接进入命令行模式]:
gg –把光标快速定位到第一行;
G –把光标快速点问道最后一行;
dd –删除光标所在行(其实是剪切该行,按p将粘贴);
ndd –删除(或剪切)光标所在行的连续n行(按p粘贴)。如:3dd –删除(剪切)连续三行;
yy –复制一行内容(按p粘贴);
nyy –复制连续n行内容;
u –撤销上一步操作;
/ –按条件查询。/从前向后查。n:按n键从前向后查询;N:按大写n从后向前查询。如:/bin –查询bin字符串。
? –按条件查询。?从后向前查。n:按n键从后向前查询;N:按大写n从前向后查询。如:?bin –查询bin字符串。
光标移动命令:
h(左)j(下)k(上)l(右)
w:光标以单词为单位向前移动,光标停到单词的第一个字母上。
b:与w相反,光标以单词为单位向后移动,光标停到单词的第一个字母上。

     e:光标以单词为单位向前移动,光标停到单词的最后一个字母上。

     ge:与e相反,光标以单词为单位向后移动,光标停到单词的最后一个字母上。

②插入模式 [在命令行模式下按i、a、o进入插入模式,此时可以编辑文件。按esc键可退出该模式返回命令行模式]

③最后行模式 [在命令行模式下按冒号:进入该模式]
:set nu –显示行号
:n –n是行号。快速定位到第n行。如: :5 –快速定位到第5行。
:n,ms/str/newstr/g –替换字符串。
n指开始行,m指结束行( s,strnewstrg1.1 代 表 最 后 一 行 ) , s 表 示 替 换 , s t r 被 替 换 字 符 串 , n e w s t r 指 新 字 符 串 , g 表 示 通 行 替 换 。 示 例 : 1. : 1 , s/nologin/888888/g –把整个文件(第一行到最后一行)的nologin替换成888888。
2. :5,10s/nologin/888888/g –把第5行到第10行的nologin替换成888888。
20.history –查看所有历史输入命令。
21.init 0 或 shutdown -h now –关机
22.init 6 或 shutdown -r now –重启
23.管道符(|) [命令格式:命令A | 命令B] –将命令A的正确输出作为命令B的操作对象。
可以放在管道符后面的命令[grep、more、head、wc等]
示例:cat /etc/passwd | grep “root”
24.>(覆盖) –以覆盖的方式将命令的正确输出输出到指定的文件或设备当中。
示例:grep “root” /etc/passwd > a.txt
25.>>(追加) –以追加的方式将命令的正确输出输出到指定的文件或设备当中。
示例:grep “root” /etc/passwd >> a.txt
26.wc [-lwb] –输出文件中的行数、单词数、字节数。
参数:-l 输出换行符统计数; -w 输出单词统计数; -b 输出字节统计数。
示例:1.cat /etc/passwd | wc -l –输出文件中的行数
2.ls | wc -l –输出当前目录中的文件数。
27.ps -ef –查看进程。
示例:ps -ef | grep java –查看java的进程。
28.top –查看系统资源使用情况。按q退出。
29.创建或删除用户、用户组
与用户、用户组有关的两个文件:
/etc/passwd –存储用户名和UID信息。UID 0表示root用户,普通用户通常从UID 500开始。
/etc/group –存储用户组名称和GID

useradd username –创建一个用户,创建一个用户后系统会默认创建一个与用户名同名的用户组;
–创建一个用户后,系统会默认在/home目录下创建一个同名的目录作为家目录。
userdel username –删除用户;
groupadd groupname –创建一个用户组。创建用户组后并不会默认创建一个同名的用户;
groupdel groupname –删除用户组;
30.设置或修改用户密码(只有root用户才能修改用户密码)
方式一:passwd password
方式二:echo “密码” | passwd –stdin username
31.echo –表示回显字符,如:echo 123
32.su - username –切换用户;
注:1.su命令中有和没有横杠(-)是有区别的;
2.当前用户时命令行的开头是 #,切换到其他用户后命令行的开头变为 $ ;
3.由root用户切换到普通用户时不需要输入密码;
4.由普通用户切换到root用户或另一个普通用户时需要输入密码;
5.exit 退出;
33.exit –表示退出当前用户的登录状态,并不表示关机。如:退出切换后的用户环境返回之前的用户环境。
34.id username –查看用户信息。
35.修改权限/用户组:
文件有三种权限:r(4):可读; w(2):可写; x(1):可执行; -(横杠):代表没有相应的权限;rwx为每组权限的固定顺序,没有相应权限时 用横杠(-)代替。
每个文件有三组权限:u:文件拥有者权限; g:文件所属群组权限; o:其他用户权限;这三组权限的顺序为:ugo,不能改变。

chmod –修改文件权限。
示例:1.chmod u+w,g-r,o+x a.sh –加号(+):代表增加该权限; 减号(-):代表去掉该权限;
2.chmod 766 a.sh –每个数字代表一组权限的总和,在该示例中7代表文件拥有者权限,6代表文件所属群权限,6代表其他用户权限,
7[rwx]=4[r]+w[2]+x[1] 6[rw]=r[4]+w[2]
3.chmod a+x 等价于 chmod +x 表示给三组权限都添加可执行权限。
chown –修改文件拥有者[chang owner]
语法:1.chown [-R] 账号名称 文件或目录 – -R表示连同目录下的子目录和子文件同时更改文件拥有者。
2.chown [-R] 账号名称:组名 文件或目录
示例:1.chown test a.sh
2.chown root:root a.sh
chgrp –修改文件所属组[change group]
语法:chgrp [-R] 组名 文件或目录
示例:chgrp root a.sh
36.压缩和解压:
压缩文件的扩展名有:.tar.gz、.tar.bz2、.tar.xz、.gz、.bz2、.xz、.zip等。
tar –该命令可以将很多文件打包成一个文件。它并没有提供压缩功能,只是将很多文件集结成一个文件。

①.tar.gz –tar程序打包的文件,其中并且经过gzip的压缩。
压缩:tar -zcvf 压缩后的包名.tar.gz 压缩的目标文件/目录
解压:tar -zxvf 压缩包名.tar.gz [-C 目标目录]
查看:tar -ztvf 压缩包名.tar.gz –可以查看包中有哪些文件。
示例:1.# tar -zcvf log.tar.gz /var/log/
2.# tar -zxvf log.tar.gz -C /tmp/logs
3.# tar -ztvf log.tar.gz | grep sa
②.tar.bz2 —-tar程序打包的文件,其中并且经过bzip2的压缩。
压缩:tar -jcvf 压缩后的包名.tar.gz 压缩的目标文件/目录
解压:tar -jxvf 压缩包名.tar.gz [-C 目标目录]
③.zip –zip程序压缩的文件
压缩:zip 目标文件
解压:unzip 压缩包名
④rar –系统默认不支持,需要安装第三方插件。

相关参数说明:
-c:建立一个压缩文件 [create];
-x:解压压缩包文件;
-t:查看压缩包中的文件;
37.df -h –查看已挂载分区的情况。
38.ifconfig –查看系统IP。ip a 也可以查看IP。
39.free [-m] –查看系统内存使用情况。 -m参数表示内存和交换区的大小以兆(M)为单位,不加-m参数时以k为单位。
40.netstat –查看端口情况。
netstat -an
netstat -tlnp –t:tcp协议 l:监听 p:进程id(pid)
41.ps –查看进程
ps -ef –列出进程信息中PID表示进程id,PPID表示父进程id。
ps auxf
42.kill –杀死进程。
kill -l –列出一些信号。
kill pid –等价于:kill -15 pid,表示正常退出一个进程。pid表示线程id。
kill -9 pid –强制杀死一个进程。
43.who –显示已登录的用户。
44.which –显示命令的绝对路径。如:which man
45.sed –stream editor的缩写,流编辑器。主要功能是对文本进行过滤和替换。
示例:1.sed ‘匹配条件/执行的动作’ /etc/passwd
2.cat /etc/passwd | sed sed ‘匹配条件/执行的动作’
3.sed ‘s/str/newstr/g’ –替换,s表示替换,g表示全局
4.# ifconfig | grep ‘192.168.0.107’ | sed ‘s/inet //g’ | sed ‘s/ netmask.*//g’
46.awk –是一个强大的文本分析工具。
示例:awk -F: ‘{print 1}' /etc/passwd -- -F指定分隔符, 1}' /etc/passwd -- -F指定分隔符, 1表示第一列(往后以此类推$2[第二列]…)
47.service
–service 服务名 start #启动服务
–service 服务名 stop #停止服务
–service 服务名 restart #重启服务
–service 服务名 status #查看服务状态
48.chkconfig –list #列出系统上服务的状态 on off 3 5

49.sftp
sftp是一个交互式文件传输程序,它类似于ftp,但是它进行加密传输,比ftp有更高的安全性。
①远程连接主机,例如远程主机的IP为10.0.26.1,用户名是wasadmin
sftp [email protected] 回车提示输入密码。进入提示符sftp>
②从远程主机下载文件
sftp>get /home/wasadmn/var/test.jar /home/wasadmin/www/
说明:从远程主机的/home/wasadmn/var/目录下将test.jar下载到本地的/home/wasadmin/www/目录下。
③把本地文件上传到远程主机
sftp>put /home/wasadmn/var/test.jar /home/wasadmin/www/
说明:把本地/home/wasadmn/var/目录下的test.jar上传到远程主机的/home/wasadmin/www/目录下。

注:1.如果登录远程主机不是为了上传下载文件而是要修改远程主机上的一些文件,可以用ssh,例如:ssh [email protected]
    2.登录到远程主机后ls cd rm mkdir等等命令都可以正常使用,但是在远程主机上调用本机都是在命令前面加上l,如:lls lcd等;
      例如:pwd命令可以查询远程主机的当前路径,而查询本机的当前工作目录用lpwd;改变远程主机的路径用cd,改变本机路径用lcd。
    3.要离开远程主机用exit或quit、bye均可。

50.rz sz
rz和sz是Linux/Unix同Windows之间传输文件的命令行工具。优点就是不用再开一个sftp工具登录上去上传下载文件。
①sz命令是利用Zmodem协议来从Linux服务器传送文件到本地,一次可以传输一个或多个文件。
②rz命令是从本地上传文件到Linux服务器。运行该命令是会弹出一个文件选择窗口。
③安装命令:yum install lrzsz

了解:vmstat iostat mpstat sar

你可能感兴趣的:(Linux)