Linux命令(基础面试可用,都是自己觉得平时使用多的)

news2024/11/28 0:44:07

1.cat

   参数:
      -n:显示行号
      -s:压缩连续的空行,只显示一个空行

2.chattr 改变文件属性

语法:
	chattr  [-RV] [+/-/=<属性>][文件或目录]
属性:
	a:让文件或目录仅供附加用途
 	i:不得任意更改文件或目录
 	s:保密性删除文件或目录
 参数:
 	-R:递归处理制定目录下的所有文件以及子目录
 	-V:显示指令执行过程
	+<属性>:开启文件或目录的该属性项
 	-<属性>:关闭文件或目录的该属性项
实例:
   1.chattr +i /etcresolv.conf  ##使用chattr命令防止系统中某个文件被修改
   2.chattr +a /var/log/messages  ##让某个文件只能往里面追加数据,但是不能删除,适用于各种日志文件

3.chgrp 变更文件或目录的所属群组

语法:
	chgrp [参数][所属群组][文件或目录]
参数:
	-v:显示指令执行过程
	--reference=<参考文件或目录>
实例:
	1.chgrp -v bin log2021.log  #改变文件log2021.log的群组属性
	   过程:
	      [root@localhost test]# ll
		  ---xrw-r-- 1 root root 302108 11-13 06:03 log2012.log
		  [root@localhost test]# chgrp -v bin log2012.log
		  [root@localhost test]# ll
	      ---xrw-r-- 1 root bin   302108 11-13 06:03 log2012.log
	2.chgrp --reference=log2012.log log2013.log  ##根据执行文件log2012.log的属组更改其他文件log2013.log的群组属性
	    过程:
	      [root@localhost test]# ll
		  ---xrw-r-- 1 root bin  302108 11-13 06:03 log2012.log
		  -rw-r--r-- 1 root root     61 11-13 06:03 log2013.log
		  [root@localhost test]#  chgrp --reference=log2012.log log2013.log 
	      [root@localhost test]# ll
		  ---xrw-r-- 1 root bin  302108 11-13 06:03 log2012.log
		  -rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log

4.chmod 修改用户对文件的权限

 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/b571c084bd11407e9780277e626ef09b.png)
 	
 语法:
     chmod   [参数] mode 文件
 mode:
     u:文件拥有者 g:与该文件的拥有者属于同一个组的 o:代表其他意外的人 a:这三者都是
     +:代表增加权限 -:代表取消权限  =:表示唯一设定权限
     r:表示可读   w:表示可写  x:表示可执行  
 参数:
     -R:对目前目录下的所有文件与子目录进行相同的权限变更
    
 实例:
     find path/ -type d -exec chmod a+x {} \;   ##允许所有用户浏览或通过目录path/

5.chown 设置文件所有者和文件关联组,需要使用root用户才能执行

语法:
    chown [参数] user[:group] file ...
参数:
    user:新的文件拥有者的使用ID
    group:新的文件拥有者的使用者组
    -R:处理制定目录以及其子目录下的所有文件
实例:
    1.chown root /var/run/httpd.pid   将/var/run/httpd.pid的所有者设置root
    2.chown runoob:runoobgroup file1.txt    将file1.txt文件的拥有者设置为runoob,群体的使用者runoobgroup
    3.chown -R runoob:runoobgroup *  将当前目录下的所有文件与子目录的拥有者都设置为runoob,群体的使用者runoobgroup

6.cut 显示每行从头开始算起num1到num2的文字

参数:
    -d:设置间隔符号
    -f:设置需要查看的列数
实例:
    [root@localhost]# head -n 2 /etc/passwd
    root:x:0:0:root:/root:/bin/nash
    bin:x:1:1:bin:/bin:/sbin/nologin
    [root@localhost]# cut -d: f1 /etc/passwd   使用冒号 : 进行分割,只打印出第一列的数据
    root
    bin

7.ln 为某一个文件在另一个位置创建一个同步链接

语法:ln [参数] [源文件目录][目标文件或目录]

软链接和硬链接:
	硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。
	硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。
	不论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。
	
	软链接:
		1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
		2.软链接可以 跨文件系统 ,硬链接不可以
		3.软链接可以对一个不存在的文件名进行链接
		4.软链接可以对目录进行链接
	硬链接:
		1.硬链接,以文件副本的形式存在。但不占用实际空间。
		2.不允许给目录创建硬链接
		3.硬链接只有在同一个文件系统中才能创建
参数:
    -f:强制执行
    -i:交互模式,文件存在提示用户是否覆盖
    -s:软连接
    -v:显示详细处理过程
实例:
    1.ln -s log2013.log link2013   给文件log2013.log文件创建软链接link2013,如果log2013.log	丢失,则link2013失效
    
      [root@localhost test]# ll
      -rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log
  	  [root@localhost test]# ln -s log2013.log link2013
	  [root@localhost test]# ll
	  lrwxrwxrwx 1 root root     11 12-07 16:01 link2013 -> log2013.log
	  -rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log
    2. ln log2013.log ln2013      给文件创建硬链接,为log2013.log创建硬链接ln2013,log2013.log与ln2013的各项属性相同  
	  
	   [root@localhost test]# ll
	   lrwxrwxrwx 1 root root     11 12-07 16:01 link2013 -> log2013.log
	   -rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log
	   [root@localhost test]# ln log2013.log ln2013
	   [root@localhost test]# ll
	   lrwxrwxrwx 1 root root     11 12-07 16:01 link2013 -> log2013.log
	   -rw-r--r-- 2 root bin      61 11-13 06:03 ln2013
	   -rw-r--r-- 2 root bin      61 11-13 06:03 log2013.log

8.find

语法:find  [路径] [匹配条件][动作]
参数:
    -name:按名字查找
    -type:按类型查找  可以是f(普通文件) d(目录) 
    -size [+-] size [cwbkMG]:按文件大小查找,支持使用+或-表示大于或小于指定大小,单位可以是c(字节)、w(字数)、b(块数)、k(KB)、M(MB)或G(GB)
    -mtime days:按修改时间查找,支持使用+和-指定天数前后
动作:
     -amin n:查找在n分钟内被访问过的文件
     -atime n:查找在n*24小时内被访问过的文件
     -cmin n:查找在n分钟内状态发生变化的文件(例如权限)
     -ctime n:查找在n*24小时内状态发生变化的文件
     -mmin n:查找在n分钟内被修改过的文件
     -mtime n:查找在n*24小时内被修改过的文件        
  在这些参数中,n可以是正数,负数或0。正数表示在指定的时间内修改或访问过的文件,负数表示在指定时间前修改或访问的文件,0表示在当前时间点上修改或访问的文件
  
实例:
    1.查找当前目录以及子目录中文件名后缀为.txt的文件
    	find  -type f -name "*.txt"
    2.查找/var/log中在7天前修改过的,大于1MB的文件
        find  /var/log -mtime +7 -size +1M
    3.查找/var/log目录中更改时间在7天之前的普通文件,并且删除之前询问他们
        find  /var/log -type f -mtime +7 -ok rm {} \;

9.less 支持翻页、搜索浏览文件

语法:
    less  [参数]  文件
参数:
    -i:忽略搜索时的大小写
    -o<文件名>:将less输出的内容在指定文件中保存起来
    b:向上翻一页
    d:向后翻半页
    Q:退出less命令
    u:向前滚动半页
    y:向前滚动一行
    空格:滚动一页
    回车:滚动一行
    [pagedown]:向下翻一页
    [pageup]:向上翻一页 

10.more 类似于cat,但是可以一页一页显示

语法:
   more [参数] [-num] [+/pattern] [+linenum] [filename]
 参数:
      -num:一次显示的行数
      +/pattern:在每个文档显示前搜索改字符串(pattern),然后从该字符串之后开始显示
      +linenum:从第linenum行开始显示
 实例:
     从第20行开始显示文档testfile内容
        more +20 testfile
 常用操作:
      Enter 向下n行,默认1行
      空格    向下滚动一屏      
      Ctrl+B  返回上一屏
      V:调用vi编辑器
      q:退出more      

11.tail 查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件

 参数:
    -f 循环读取
	-q 不显示处理信息
	-v 显示详细的处理信息
	-c<数目> 显示的字节数
	-n<行数> 显示文件的尾部 n 行内容,不使用-n时,默认10行
	--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
	-q, --quiet, --silent 从不输出给出文件名的首部
	-s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒
实例:
	显示文件 notes.log 的内容,从第 20 行至文件末尾:
		tail -n +20 notes.log
    显示文件 notes.log 的最后 10 个字符:
		tail -c 10 notes.log

12.head 查看文件的开头部分的内容,有一个常用的参数 -n 用于显示行数,默认为 10,即显示 10 行的内容

参数:
    -q 隐藏文件名
	-v 显示文件名
	-c<数目> 显示的字节数。
	-n<行数> 显示的行数。
实例:
    显示 notes.log 文件的开头 5 行,请输入以下命令:		
		head -n 5 runoob_notes.log
		
    显示文件前 20 个字节:
		head -c 20 runoob_notes.log

13.mv 更改文件或目录的名称,或将文件或目录移入其他位置

语法:
	 mv [options] source dest
     mv [options] source directroy
参数:
     -b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
	 -i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
	 -f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
	 -n: 不要覆盖任何已存在的文件或目录。
	 -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
命令格式运行结果
mv source_file(文件) dest_file(文件)将源文件名 source_file 改为目标文件名 dest_file
mv source_file(文件) dest_directory(目录)将文件 source_file 移动到目标目录 dest_directory 中
mv source_directory(目录) dest_directory(目录)目录名 dest_directory 已存在,将 source_directory 移动到目录名 dest_directory 中;目录名 dest_directory 不存在则 source_directory 改名为目录名 dest_directory

14.rm 删除一个文件或目录

语法:
    rm [参数] 文件
参数:
    -i:删除前逐一询问
    -f:直接删除,不询问
    -r:将目录以下的文档逐一删除

15.split 将一个文件分割成数个

语法:
   split [-行数] [-b 字节][-l  行数] [-C 字节][要切割的文件][输出文件名]
参数:
    -<行数>:指定每多少行切成一个小文件
    -b<字节>:指定没多少字节切成一个小文件
    -C<字节>:与-b相似,但是在切割时尽量维持每行的完整性
实例:
     split -6 test.txt   将test.txt文件每6行分割成一个文件,执行完成后,split会将大文件test.txt分割成众多小文件,每个文件只有6行内容。

16.touch 修改文件或目录的时间属性,包括存取时间和更改时间,如果文件不存在,则创建文件。

语法:
    touch  [参数] [-d 日期时间] [-r 参考文件或目录] [-t 日期时间] [文件或目录]
参数:
   a:改变文档的读取时间
   m:改变文档的修改时间
   c:假如目的档案不存在,不会建立新的档案
   d:设定时间和日期,可以使用不同格式
   --no=create:不会创建新档案
实例:
    使用touch修改文件时间为当前系统时间
        $ ls -l testfile                #查看文件的时间属性  
		#原来文件的修改时间为16:09  
		-rw-r--r-- 1 hdd hdd 55 2011-08-22 16:09 testfile  
	在执行完touch后:
		$ touch testfile                #修改文件时间属性为当前系统时间  
		$ ls -l testfile                #查看文件的时间属性  
  	    #修改后文件的时间属性为当前系统时间  
	   -rw-r--r-- 1 hdd hdd 55 2011-08-22 19:53 testfile  

17.which 查找文件

 实例:
     $ which bash   使用which查找bash的绝对路径

18.whereis 查找文件

参数:
      -b  查找二进制文件
      -B<目录>:只在设置的目录下查找二进制文件
      -f:不显示文件名前的路径名称
      -m:只查找说明文件
      -M<目录>  只在设置的目录下查找说明文件
      -s:只查找原始代码文件
实例:
      1.使用whereis查看bash的位置
            whereis bash
         输出:
            bash:/bin/bash/etc/bash.bashrc/usr/share/man/man1/bash.1.gz 
         含义(从左到右):查询的程序名,bash路径,bash的man手册路径
       2.查询二进制文件或帮助文件
            $ whereis -b bash
            bash: /bin/bash /etc/bash.bashrc /usr/share/bash    # bash命令的二进制程序的地址  
            $ whereis -m bash
            bash: /usr/share/man/man1/bash.1.gz  #bash命令的帮助文件地址 

19.read 从标准输入(大部分是键盘)读取数据

参数:
    -a:后面跟一个变量,该变量会被认为是一个属组,然后给其赋值,默认是以空格为分割符
    -d:后面跟一个标志符,其实只有其后的第一个字符有用,作为结束的标志
    -p:后面跟提示信息,在输入前提示消息会被打印出
    -e 在输入的时候可以使用命令补全功能。
	-n 后跟一个数字,定义输入文本的长度,很实用。
	-r 屏蔽\,如果没有该选项,则\作为一个转义字符,有的话 \就是个正常的字符了。
	-s 安静模式,在输入字符时不再屏幕上显示,例如login时输入密码。
	-t 后面跟秒数,定义输入字符的等待时间。
实例:
    1.简单读取:
			#!/bin/bash
			
			#这里默认会换行  
			echo "输入网站名: "  
			#读取从键盘的输入  
			read website  
			echo "你输入的网站名是 $website"  
			exit 0  #退出
  	  测试结果:
  	        输入网站名: 
			www.runoob.com
			你输入的网站名是 www.runoob.com
	2.-p 参数,允许在read命令执行时给一个提示
			#!/bin/bash
	
			read -p "输入网站名:" website
			echo "你输入的网站名是 $website" 
			exit 0
     	测试结果:
     	    输入网站名:www.runoob.com
			你输入的网站名是 www.runoob.com
    3.-t 参数指定 read 命令等待输入的秒数,当计时满时,read命令返回一个非零退出状态。
           #!/bin/bash

			if read -t 5 -p "输入网站名:" website
			then
			    echo "你输入的网站名是 $website"
			else
			    echo "\n抱歉,你输入超时了。"
			fi
			exit 0
		 执行程序不输入,等待 5 秒后:
		
			输入网站名:
			抱歉,你输入超时了
	4、除了输入时间计时,还可以使用 -n 参数设置 read 命令计数输入的字符。当输入的字符数目达到预定数目时,自动退出,并将输入的数据赋值给变量。
			#!/bin/bash

			read -n1 -p "Do you want to continue [Y/N]?" answer
			case $answer in
			Y | y)
			    echo "fine ,continue";;
			N | n)
 				 echo "ok,good bye";;
			*)
			     echo "error choice";;

			esac
			exit 0
	 	 该例子使用了-n 选项,后接数值 1,指示 read 命令只要接受到一个字符就退出。只要按下一个字符进行回答,read 命令立即接受输入并将其传给变量,无需按回车键。
	 5.-s 选项能够使 read 命令中输入的数据不显示在命令终端上(实际上,数据是显示的,只是 read 命令将文本颜色设置成与背景相同的颜色)。输入密码常用这个选项。
			 #!/bin/bash

			read  -s  -p "请输入您的密码:" pass
			echo "\n您输入的密码是 $pass"
			exit 0
		执行程序输入密码后是不显示的:

			请输入您的密码:
			您输入的密码是 runoob
	 6.read会读取文件中的"一行"文本,假设测试文件test.txt内容如下:
	        123
		    456
		    runoob
	   测试代码:
	   		#!/bin/bash

			count=1    # 赋值语句,不加空格
			cat test.txt | while read line      # cat 命令的输出作为read命令的输入,read读到>的值放在line中
			do
				echo "Line $count:$line"
				count=$[ $count + 1 ]          # 注意中括号中的空格。
			done
			echo "finish"
			exit 0
	  执行结果:
	        Line 1:123
			Line 2:456
			Line 3:runoob
			finish

20.sort命令

     参数:
         -b 忽略每行前面开始出现的空格字符
         -r 以相反的方式来排序
         -d 排序时,处理英文字母、数字以及空格字符外,忽略其他字符
         -f 排序时,将小写字母视为大写字母    
         -n 按照数值的大小进行排序
         -u 输出的结果是去重后的         
         -k 按照指定的列进行排序 
            例如  sort textfile -k 2   就是按照第二列进行排序

21.uniq 检查以及删除文本文件中重复出现的行列,一般和sort配合使用

参数:
    -c 或 --count 在每行旁边显示该行重复出现的次数
    -d 或 --repeated 仅显示重复出现的行列
注意: 
  当文件中的重复内容不相邻时,uniq命令不起作用,例如:
    test 30  
	Hello 95  
	Linux 85 
	test 30  
	Hello 95  
	Linux 85 
	test 30  
	Hello 95  
	Linux 85
 此时就需要先用sort进行排序,之后再用uniq -c 进行统计出现次数

22.wc 计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据

参数:
   -c或-bytes或--chars :只显示Bytes数
   -l或--lines:  显示行数
   -w或--words:只显示字数
实例:
    1.假设测试文件testfile的内容为以下:
   	    $ cat testfile  
		Linux networks are becoming more and more common, but scurity is often an overlooked  
		issue. Unfortunately, in today’s environment all networks are potential hacker targets,  
		fro0m tp-secret military research networks to small home LANs.  
		Linux Network Securty focuses on securing Linux in a networked environment, where the  
		security of the entire network needs to be considered rather than just isolated machines.  
		It uses a mix of theory and practicl techniques to teach administrators how to install and  
		use security applications, as well as how the applcations work and why they are necesary. 
	使用wc统计指定文件的行数、字数,以及字节数
	    $ wc testfile
	    3 92 598 testfile       # testfile文件的行数为3、单词数92、字节数598 
	   
	 2.统计多个文件信息
	    $ wc testfile testfile_1 testfile_2  #统计三个文件的信息  
		3 92 598 testfile                    #第一个文件行数为3、单词数92、字节数598  
		9 18 78 testfile_1                   #第二个文件的行数为9、单词数18、字节数78  
		3 6 32 testfile_2                    #第三个文件的行数为3、单词数6、字节数32  
		15 116 708 总用量                    #三个文件总共的行数为15、单词数116、字节数708 

23.ftp

参数:
   -d:详细显示指令执行过程
   -i:关闭交互模式,不询问任何问题
   -g:关闭本地主机文件名支持特殊字符的扩充特性
   -n:不使用自动登录
   -v:显示指令执行过程
实例:
   1.建立ftp链接
       ftp 192.168.42.77   如果连接建立,将显示确认消息,并且提示输入FTP用户名
   2.下载远程文件 test.txt
       get test.txt    将下载远程服务器上的test.txt文件下载到本地当前目录
   3.上传本地文件
       put  test.txt
   4.删除远程文件
       delete  test.txt
   5.退出FTP会话
       bye
 注意:FTP流量不加密。对于安全的数据传输,请使用SCP或SFTP

24.df 显示目前文件系统磁盘使用情况

参数:
    -a :显示所有文件系统
    -B :指定块大小,以特定单位显示磁盘空间信息
    -h :以人类可读的格式显示输出结果
    -k :以KB为单位显示磁盘信息
    -t :仅显示指定类型的文件系统
实例:
	1.# df 
	   Filesystem     1K-blocks    Used     Available Use% Mounted on 
	   /dev/sda6       29640780 4320704     23814388  16%     / 
	   udev             1536756       4     1536752    1%     /dev 
	   tmpfs             617620     888     616732     1%     /run 
	   none                5120       0     5120       0%     /run/lock 
	   none             1544044     156     1543888    1%     /run/shm 
	 说明:
	     Filesystem:文件系统的名称或标识符
	     1K-blocks:文件系统的总容量,以1KB块为单位,即文件系统总大小
	     Used:文件系统已经使用的量,以1KB块为单位
	     Available:文件系统仍然可以使用的容量
	     Use%:文件系统已使用容量占总容量的百分比
	     Mounted on:文件系统被挂在到的目录或位置
	2.# df -h 
		Filesystem      Size  Used   Avail Use% Mounted on 
		/dev/sda6       29G   4.2G   23G   16%     / 
		udev            1.5G  4.0K   1.5G   1%     /dev 
		tmpfs           604M  892K   603M   1%     /run 
		none            5.0M     0   5.0M   0%     /run/lock 
		none            1.5G  156K   1.5G   1%     /run/shm 

25.du 显示目录或文件大小

参数:
   -a:显示目录中个别文件的大小
   -b:显示目录或文件大小时,以字节byte为单位
   -c:除了显示个别目录或文件大小外,也显示所有目录或文件的总和
   -h或--human-readable 以K,M,G为单位,提高信息的可读性。
   -k或--kilobytes 以1024 bytes为单位。
实例:
     显示指定文件所占空间
		# du log2012.log 
		300     log2012.log
		
	方便阅读的格式显示test目录所占空间情况:
		# du -h test
		608K    test/test6
		308K    test/test4
		4.0K    test/scf/lib
		4.0K    test/scf/service/deploy/product
		4.0K    test/scf/service/deploy/info
		12K     test/scf/service/deploy
		16K     test/scf/service
		4.0K    test/scf/doc
		4.0K    test/scf/bin
		32K     test/scf
		8.0K    test/test3
		1.3M    test

26.mount 挂在Linux系统外的文件

语法:
     mount [-l][-t <文件系统类型>][-o <选项>] <设备名称> <挂载点>
		-l:以列表的形式显示当前已挂载的文件系统。
		-t <文件系统类型>:指定要挂载的文件系统的类型,例如ext4、ntfs等。
		-o <选项>:指定挂载选项,比如读写权限、访问控制等。
		<设备名称>:指定要挂载的设备的名称或路径。
		<挂载点>:指定要挂载到的目录路径。

选项:
    ro:以只读模式挂载文件系统。
	rw:以读写模式挂载文件系统。
	remount:重新挂载一个已经挂载的文件系统,可以修改挂载选项。
	user:允许普通用户挂载文件系统,而不仅仅是超级用户。
	nouser:只允许超级用户挂载文件系统。
	exec:允许在文件系统中执行可执行文件。
	noexec:禁止在文件系统中执行可执行文件
实例:
    1.将/dev/sbd1设备挂在到/mnt目录下
        mount /dev/sdb1 /mnt
    2.显示当前已经挂在的文件系统
        mount -l
    3.以只读模式挂载文件系统
        mount -o ro /dev/sdc1 /mnt
    4.重新挂在已经挂载的文件系统
        mount -o remount,rw /dev/sdc1 /mnt
        该命令将重新以读写模式挂载已经挂载到/mnt目录的/dev/sdc1设备
    5.如何挂载ExFAT格式的设备
		安装ExFAT驱动程序和工具。
		   sudo apt-get install exfat-utils exfat-fuse
		创建一个目录作为挂载点。例如,可以使用以下命令在“/mnt”目录下创建一个名为“exfat”的目录:
		   sudo mkdir /mnt/exfat
		使用以下命令将ExFAT格式的硬盘挂载到刚刚创建的目录:
		   sudo mount -t exfat /dev/sdb1 /mnt/exfat
		其中,“/dev/sdb1”应替换为您的硬盘设备和分区号。可以使用以下命令来查找硬盘设备和分区号:sudo fdisk -l。如果硬盘有多个分区,可以根据需要将挂载点指向不同的分区。

		确认硬盘已经成功挂载到指定的目录中。可以使用以下命令来检查:mount | grep exfat。如果该命令返回了硬盘的信息,则表示挂载成功。
	6.如果要卸载ExFAT格式的设备
		   sudo umount /mnt/exfat
	  如果挂载点被其他进程占用,可以加-f参数强制卸载
	  	   sudo umount -f /mnt/exfat

27.telnet 远程登陆主机

语法:
    telnet [参数][主机名称或IP地址<通信端口>]
参数:
    -8 允许使用8位字符资料,包括输入与输出。
	-a 尝试自动登入远端系统。
	-b<主机别名> 使用别名指定远端主机名称。
	-l<用户名称> 指定要登入远端主机的用户名称。
实例:
     登录远程主机
     # telnet 192.168.0.5     //登录IP为 192.168.0.5 的远程主机

28.SSH 通过ssh协议连接到远程主机,实现远程登录和执行命令,它加密会话中的所有通信,确保数据传输的安全性

语法:
     ssh [选项] [user@]hostname [command]
参数说明:
     [user@]hostname:要连接的远程主机的用户名和主机名。
	 [command]:可选的在远程主机上执行的命令。
常用选项:
    -l user:指定要登录的用户。
	-p port:指定连接到远程主机的端口号,默认是22。
	-i identity_file:指定身份验证文件(私钥文件)。
	-v:详细模式,可以显示调试信息。
	-C:启用压缩。
	-N:不执行远程命令,只进行端口转发。
	-f:后台运行。
	-L local_port:remote_host:remote_port:本地端口转发。
	-R remote_port:local_host:local_port:远程端口转发。
	-D [bind_address:]port:动态应用程序级端口转发。

实例:
     1.连接到远程主机用户名是root,主机名是192.168.1.26
         ssh root@192.168.1.26
     2.指定端口链接
         ssh  -p  8080  root@192.168.1.26
     3.使用身份验证文件
         ssh -i ~/.ssh/id_rsa root@192.168.1.26
     4.在远程主机上执行命令
         ssh test@runoob.com ls -la
     5.公钥认证登录:
		ssh-keygen
		ssh-copy-id [用户名]@[IP地址]
	  使用ssh-keygen生成密钥对,并使用ssh-copy-id命令将公钥复制到目标主机上,实现公钥认证登录,避免每次登录都输入密码
	 6.文件传输:
		scp [本地文件路径] [用户名]@[IP地址]:[目标路径]
		
		使用scp指令可以实现本地与远程主机之间的文件传输。

29.SCP 用于 Linux 之间复制文件和目录

语法:
	scp [可选参数] file_source file_target 
	
参数:
	-p:保留原文件的修改时间,访问时间和访问权限。
	-r: 递归复制整个目录。
	
实例:
  1.从本地复制到远程主机
    命令格式如下:
        scp /path/to/local/file.txt user@remote_host:/path/on/remote/
    这会将本地的 `file.txt` 文件复制到远程主机 `remote_host` 的 `/path/on/remote/` 目录下。
    2. 从远程主机复制到本地
        scp user@remote_host:/path/on/remote/file.txt /path/to/local/
       这会将远程主机 `remote_host` 的 `/path/on/remote/file.txt` 文件复制到本地的 `/path/to/local/` 目录下。
    3. 递归复制目录
        scp -r user@remote_host:/path/on/remote/directory /path/to/local/
       这会将远程主机 `remote_host` 的 `/path/on/remote/directory` 目录及其所有内容复制到本地的 `/path/to/local/` 目录下。
    4. 指定 SSH 端口
       如果远程主机的 SSH 端口不是默认的 22,可以使用 `-P` 选项指定端口:
        scp -P 2222 user@remote_host:/path/on/remote/file.txt /path/to/local/

30.useradd 建立用户帐号

说明:帐号建好之后,再用 passwd 设定帐号的密码。而可用 userdel 删除帐号。使用 useradd 指令所建立的帐号,实际上是保存在 /etc/passwd 文本文件中

参数:
    -d<登入目录>  指定用户登入时的起始目录。
    -e<有效期限>  指定帐号的有效期限。
	-f<缓冲天数>  指定在密码过期后多少天即关闭该帐号。
	-g<群组>  指定用户所属的群组。
	-G<群组>  指定用户所属的附加群组。
	-r  建立系统帐号。
	-s<shell>   指定用户登入后所使用的shell。
	-u<uid>  指定用户ID。
实例:
    添加一般用户
	# useradd tt
	
	为添加的用户指定相应的用户组	
	# useradd -g root tt
	
	创建一个系统用户		
	# useradd -r tt
	
	为新添加的用户指定home目录	
	# useradd -d /home/myd tt
	
	建立用户且制定ID		
	# useradd caojh -u 544

31.passwd 更改使用者的密码

参数:
    -d 删除密码
	-f 强迫用户下次登录时必须修改口令
	-w 口令要到期提前警告的天数
	-l 停止账号使用
	-S 显示密码信息
	-u 启用已被停止的账户
实例:
	修改用户密码
	# passwd runoob  //设置runoob用户的密码
	Enter new UNIX password:  //输入新密码,输入的密码无回显
	Retype new UNIX password:  //确认密码
	passwd: password updated successfully
	
	# 显示账号密码信息
	# passwd -S runoob
	runoob P 05/13/2010 0 99999 7 -1
	
	删除用户密码		
	# passwd -d lx138 
	passwd: password expiry information changed.

32.ps 显示当前进程的状态

语法:
     ps [选项] 
参数:
    -A 列出所有的进程
	-w 显示加宽可以显示较多的资讯
	-au 显示较详细的资讯
	-aux 显示所有包含其他使用者的进程		
	-d 显示所有进程,但省略所有的会话引线(utility)		
	-p pid 进程使用cpu的时间		
	-u uid or username 指定显示某用户的进程
			
	   au(x) 输出格式 :		
		USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
		USER: 行程拥有者
		PID: pid
		%CPU: 占用的 CPU 使用率
		%MEM: 占用的记忆体使用率
		VSZ: 占用的虚拟记忆体大小
		RSS: 占用的记忆体大小
		TTY: 终端的次要装置号码 (minor device number of tty)
		STAT: 该行程的状态:	
			D: 无法中断的休眠状态 (通常 IO 的进程)
			R: 正在执行中
			S: 静止状态
			T: 暂停执行
			Z: 不存在但暂时无法消除
			W: 没有足够的记忆体分页可分配
			<: 高优先序的行程
			N: 低优先序的行程
			L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
		START: 行程开始时间
		TIME: 执行的时间
		COMMAND:所执行的指令

33.top命令

参数:
    -d <秒数>:指定 top 命令的刷新时间间隔,单位为秒。
	-n <次数>:指定 top 命令运行的次数后自动退出。
	-p <进程ID>:仅显示指定进程ID的信息。
	-u <用户名>:仅显示指定用户名的进程信息。
	-H:在进程信息中显示线程详细信息。
	-i:不显示闲置(idle)或无用的进程。
	-b:以批处理(batch)模式运行,直接将结果输出到文件。
	-c:显示完整的命令行而不截断。
	-S:累计显示进程的 CPU 使用时间。

在这里插入图片描述

总体系统信息:
	uptime:系统的运行时间和平均负载。
	tasks:当前运行的进程和线程数目。
	CPU:总体 CPU 使用率和各个核心的使用情况。
	内存(Memory):总体内存使用情况、可用内存和缓存。

进程信息:	
	PID:进程的标识符。
	USER:运行进程的用户名。
	PR(优先级):进程的优先级。
	NI(Nice值):进程的优先级调整值。
	VIRT(虚拟内存):进程使用的虚拟内存大小。
	RES(常驻内存):进程实际使用的物理内存大小。
	SHR(共享内存):进程共享的内存大小。
	%CPU:进程占用 CPU 的使用率。
	%MEM:进程占用内存的使用率。
	TIME+:进程的累计 CPU 时间。

34.kill 终止正在运行的进程

语法:
	kill [options] <PID>
参数:
    -l:列出所有可用的信号。
	-<signal>:发送特定的信号给目标进程,如 -9 表示发送 KILL 信号,即强制终止进程。
最常用的信号:
	SIGKILL(信号9):立即结束进程,不能被捕获或忽略。
	SIGTERM(信号15):正常结束进程,可以被捕获或忽略。
	SIGSTOP(信号19):暂停进程,不能被捕获、忽略或结束。
	SIGCONT(信号18):继续执行被暂停的进程。
	SIGINT(信号2):通常是Ctrl+C产生的信号,可以被进程捕获或忽略

35.free 显示内存状态

语法:
    free 参数  -s 间隔秒数
参数:
    -b  以Byte为单位显示内存使用情况。
	-k  以KB为单位显示内存使用情况。
	-m  以MB为单位显示内存使用情况。
	-h  以合适的单位显示内存使用情况,最大为三位数,自动计算对应的单位值。单位有:	
		B = bytes
		K = kilos
		M = megas
		G = gigas
		T = teras
	-o  不显示缓冲区调节列。
	-s<间隔秒数>  持续观察内存使用状况。
	-t  显示内存总和列。

36.xargs 命令 :此命令可以将管道或标准输入数据转换成命令行参数,使用这个命令是因为很多命令不支持使用 管道 | 来传递参数,但是平时又会经常使用。

    例如: find /sbin -perm +700 | ls -l    这个命令就是错的
          find  /sbin -perm +700 |xargs ls  -l  这个才是正确的
           
     xargs后面的命令默认是echo
        cat test.txt |xargs
           等同于
        cat test.txt |xargs echo
        
     参数:
         -a  file  从文件中读入作为stdin
         -e  flag 有时候可能是-E ,flag必须是一个以空格分隔的标志,当xargs分析到含有flag这个标志的时候就停止
         -p  打印出要执行的命令,询问用户是否要执行
         	 echo 'one two three' | xargs -p touch   执行这个命令后会询问是否创建 one two three 这三个文件
         -n num  -n后面加次数,
             例如 “ echo {0..9} | xargs -n 2 echo ”每两个参数运行一次echo命令。所以,10个阿拉伯数字运行了五次echo命令,输出了五行。
         -t  打印出最终要执行的命令,然后直接执行,不需要用户确认
             例如 “ echo 'one two three' | xargs -t rm”
         -d分隔符  ,默认的xargs的分隔符是回车,-e 制定的分隔符是空格
             例如:“echo "nameXnameXnameXname" | xargs -dX”   这个就是以 X 为分隔符
             输出结果:name name name name

37.gzip 用于压缩文件

   参数:
      -n或--no-name  压缩文件时,不保存原来的文件名称及时间戳记。
	  -N或--name  压缩文件时,保存原来的文件名称及时间戳记。
	  -r或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。

38.tar 用于创建和解压归档文件的命令行工具,可以用来将多个文件和目录组合成一个单一的归档文件,也可以用来解压已经存在的归档文件。

实例:
   1.将文件 file1、file2 和 directory 打包到一个名为 archive.tar 的归档文件中
     参数:
       -c: 创建新的归档文件
	   -v: 显示详细输出,列出被添加到归档中的文件
	   -f: 指定归档文件的名称
	 语句:
	   tar -cvf archive.tar file1 file2 directory
	   
   2.解压归档文件:解压名为 archive.tar 的归档文件,还原其中包含的文件和目录。
   		-x: 解压归档文件
   	 语句:
	 	tar -xvf archive.tar
	 	
   3、压缩归档文件:将名为 directory 的目录打包成一个归档文件,然后使用 gzip 进行压缩,生成名为 archive.tar.gz 的文件。
        -z: 使用 gzip 压缩归档文件

   4、列出归档文件中的内容:列出名为 archive.tar 的归档文件中包含的所有文件和目录。
		-t: 列出归档文件中的内容
	 语句:
		tar -tvf archive.tar
   5、追加文件到已存在的归档中:将名为 newfile 的文件添加到已存在的名为 archive.tar 的归档文件中。
		-r: 向已存在的归档中追加文件
	  语句:
		tar -rvf archive.tar newfile
   6、创建一个经过 gzip 压缩的归档文件:打包 directory 目录下的所有文件和子目录,并使用 gzip 压缩,生成名为 archive.tar.gz 的归档文件。
	  语句:
		tar -zcvf archive.tar.gz directory
   7、解压一个已经被 gzip 压缩的归档文件:解压 example.tar.gz 文件,并在当前目录下恢复其中包含的文件和目录。
      语句:
		tar -zxvf example.tar.gz

39.ip

常用对象的取值含义如下:
	link:网络设备
	address:设备上的协议(IP或IPv6)地址
	addrlabel:协议地址选择的标签配置
	route:路由表条目
	rule:路由策略数据库中的规则

常用选项的取值含义如下:
	-s:输出更详细的信息;
	-f:强制使用指定的协议族;
	-4:指定使用的网络层协议是IPv4协议;
	-6:指定使用的网络层协议是IPv6协议;
	-0:输出信息每条记录输出一行,即使内容较多也不换行显示;
	-r:显示主机时,不使用IP地址,而使用主机的域名。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2034934.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MediaPipe人体姿态、手指关键点检测

MediaPipe人体姿态、手指关键点检测 文章目录 MediaPipe人体姿态、手指关键点检测前言一、手指关键点检测二、姿态检测三、3D物体案例检测案例 前言 Mediapipe是google的一个开源项目&#xff0c;用于构建机器学习管道。   提供了16个预训练模型的案例&#xff1a;人脸检测、…

基于级联深度学习算法的前列腺病灶检测在双参数MRI中的评估| 文献速递-基于深度学习的乳房、前列腺疾病诊断系统

Title 题目 Evaluation of a Cascaded Deep Learning–based Algorithm for Prostate Lesion Detection at Biparametric MRI 基于级联深度学习算法的前列腺病灶检测在双参数MRI中的评估 Background 背景 Multiparametric MRI (mpMRI) improves prostate cancer (PCa) de…

从西安出发,走向世界——西安国际数字影像产业园跻身全国十大产业园区行列

西安&#xff0c;作为中国历史文化名城&#xff0c;不仅以其丰富的历史遗产闻名于世&#xff0c;还逐渐成为现代科技和产业发展的新高地。产业园区成为推动经济增长和创新发展的重要引擎&#xff0c;西安国际数字影像产业园&#xff0c;正怀揣着雄心壮志&#xff0c;向着全国十…

idea git拉取代码can‘t update

idea有时候创建的新分支&#xff0c;提交以后却无法拉去代码&#xff0c;提示如下错误信息&#xff1a; cant update No tracked branch configured for branch 在idea的“Terminal”窗口中输入如下命令即可 git branch --set-upstream-to origin 找不到Terminal的可以参考下图…

ESP32S3 IDF 对 16路输入输出芯片MCP23017做了个简单的测试

这次还是使用了idf老版本4.4.7&#xff0c;上次用了5.3&#xff0c;感觉不好用&#xff0c;官方的MCP23017芯片是英文版&#xff0c;真的很难读明白&#xff0c;可能是我英语水平不够吧。先看看每个寄存器的功能&#xff1a; IODIRA 和 IODIRB: 输入/输出方向寄存器 IPOLA 和 I…

B端界面升级就是升级颜值,错了,这样想就片面啦。

在B端应用的发展中&#xff0c;界面升级是非常重要的一环。然而&#xff0c;界面级不仅仅是为了提升外观颜值&#xff0c;还需要关注用户体验、功能增强和效率提升等方面。 虽然美观的界面可以吸引用户的眼球&#xff0c;但如果功能不完善&#xff0c;用户可能会选择其他产品。…

LVS负载均衡(twenty-six day)

一、LVS &#xff08;一&#xff09;什么是LVS linux virtural server的简称&#xff0c;也就是linxu虚拟机服务器&#xff0c;这是一个由章文岩博士发起的开源项目&#xff0c;官网是http://www.linuxvirtualserver.org,现在lvs已经是linux内核标准的-部分&#xff0c;使用lv…

vue 实现上浮气泡效果

一、 效果 二、代码 1.用 li 来做每个气泡 <div class"dataSea_middle_bottom"><ul><liv-for"(item,index) in keyBusiness":key"index"class"pops animal"><p class"fb">{{ item.name}}</p>…

Java面试题(一)----Java基础

基础 Java中和equals有什么区别&#xff1f; 一个是运算符&#xff0c;一个是方法。 如果比较的对象是基本数据类型&#xff0c;则比较数值是否相等&#xff1b;如果比较的是引用数据类型&#xff0c;则比较的是对象的内存地址是否相等。 因为Java只有值传递&#xff0c;对于…

SQL Zoo 9-.Window functions

以下数据均来自SQL Zoo 1.Show the lastName, party and votes for the constituency S14000024 in 2017.&#xff08;显示2017年选区“S14000024”的姓氏、政党和选票&#xff09; SELECT lastName, party, votesFROM geWHERE constituency S14000024 AND yr 2017 ORDER BY…

开启IDEA打开新项目时窗口提示

1.背景 实际开发中很多时候,我们会同时打开多个项目,或者项目切换, 这时候有2中情况,打开新窗口或者在当前窗口打开(即:关闭当前窗口,打开新窗口) 具体是那种情况,要根据实际场景,因此我们希望可以弹框提示: 是打开新窗口,还是在当前窗口打开 具体设置如下: 2.步骤 3.测试…

中国科技统计年鉴,数据覆盖1991-2022年多年份

基本信息. 数据名称: 中国科技统计年鉴 数据格式: excel 数据时间: 1991-2022年 数据几何类型: xlsx 数据坐标系: WGS84 数据来源&#xff1a;国家统计局 数据预览&#xff1a; 数据可视化.

zabbix“专家坐诊”第251期问答

问题一 Q&#xff1a;zabbix模板自带的监控项很多都不需要&#xff0c;也不用删除&#xff0c;就是怎么让他们都不展示出来 A&#xff1a;禁用掉 Q&#xff1a;还是在的&#xff0c;我想要就看不见&#xff0c;不是不启用&#xff0c;想要效果跟删除一样&#xff0c;看不见&am…

我在高职教STM32——I2C通信之SHT20传感器(1)

大家好,我是老耿,高职青椒一枚,一直从事单片机、嵌入式、物联网等课程的教学。对于高职的学生层次,同行应该都懂的,老师在课堂上教学几乎是没什么成就感的。正是如此,才有了借助CSDN平台寻求认同感和成就感的想法。在这里,我准备陆续把自己花了很多心思设计的教学课件分…

go-zero中基本配置及获取参数

一、使用配置文件启动项目 1、在项目的etc文件夹下分别创建开发环境和测试环境的配置文件,这里简单点使用不同的端口 2、配置Makefile文件启动命令来启动不同配置文件 runDev:go run users.go -f etc/application-dev.yml runProd:go run users.go -f etc/application-prod.ym…

RC电路(三):零点和极点

一、零极点定义 零点和极点是在自动控制原理中用于描述系统特性的概念。‌ 零点&#xff08;Zero&#xff09;&#xff1a;‌在传递函数的分子多项式等于零的解。即当系统的输入信号等于零时&#xff0c;‌输出信号不为零的情况下&#xff0c;‌输入信号与输出信号相等的点。‌…

人工智能系统测试生命周期详解之测试数据准备

前面的文章里我们已经整体介绍过了人工智能测试的生命周期&#xff0c;它需要经历测试需求的分析、测试环境的准备、数据的准备与验证、测试的执行预分析以及上线后的监控这样一个过程。前面的文章已经为大家介绍了人工智能系统测试生命周期的“需求分析”环节和“测试环境准备…

SPSS-主成分分析实践

相信各位小伙伴都知道主成分分析的原理&#xff0c;我们今天用SPSS来实现一下主成分分析 主成分分析步骤 对原来的全部指标进行标准化&#xff0c;以消除变量在水平和量纲的影响根据标准化的数据矩阵求出相关系数矩阵求出协方差矩阵的特征根和特征向量确定主成分&#xff0c;…

DRM(Direct Rendering Manager)直接渲染管理

DRM是Linux 内核的一个子系统&#xff0c;负责与现代显卡的GPU进行交互。DRM 公开了一个API (libdrm)&#xff0c;用户空间程序可以使用该API 向 GPU 发送命令和数据并执行诸如配置显示器模式设置之类的操作。DRM 最初是作为X 服务器直接渲染基础架构的内核空间组件开发的&…

大规模复杂场景三维重建与理解——学习笔记

一、完整的大规模复杂场景三维重建与理解系统 一个完整的大规模复杂场景三维重建与理解系统包含“自主式场景数据获取->高精度联合位姿解算->完整化三维几何重建->细粒度三维语义分割->结构化三维矢量表达->全天候长时定位定姿->高时效地图增量更新”等模块。…