Unix操作系统常用命令「建议收藏」

Unix操作系统常用命令「建议收藏」Unix操作系统常用命令一、关于档案/目录处理的命令1、ls——列目录这是最基本的档案指令。ls的意义为”list”,也就是将某一个目录或是某一个档案的内容显示出来。格式:ls-1ACFLRabcdfgilmnopqrstux-W[sv][files]ls的常用参数如下:-a:在UNIX中若一个目录或文件名字的第一个字符为…

大家好,又见面了,我是你们的朋友全栈君。

Unix操作系统常用命令

 

一、关于档案/目录处理的命令 

1、ls——列目录  

这是最基本的档案指令。 ls 的意义为 “list”,也就是将某一个目录或是  某一个档案的内容显示出来。  

格式:ls -1ACFLRabcdfgilmnopqrstux -W[sv] [files]  

ls 的常用参数如下:  

-a : 在 UNIX 中若一个目录或文件名字的第一个字符为 “.” , 则使用 ls  将不会显示出这个档案的名字,我们称此类档案为隐藏档。如 .profile、.tcshrc等,如果我们要察看这类档案,则必须在其后加上参数 -a 。  

-l : 这个参数代表使用 ls 的长( long )格式,可以显示更多的信息,如档案存取权,档案拥有者( owner ),档案归属组,档案大小,档案最后更新时间,甚而 symbolic link 的档案是 link 那一个档等等。 

在开始的10个字符上系统给出文件的用户权限。该序列分成四个域。第一个字符为类型域,第2、3、4个字符为用户主域,第5、6、7个字符为同组用户域,第8、9、10个字符为其它用户域,域中字符的含义如下:  

l 在类型域中:  

d 表示此文件是一个目录  

– 表示此檔是一个普通档  

b 表示此檔是一个特殊的块设备I/O档  

c 表示此文件是一个特殊的字符设备I/O文件  

l 表示此檔是一个连接檔。在其文件名称后紧跟与它连接的文件路径及名称。如:  unix -> /stand/unix  

l 在“用户主”、“同组用户”、“其它用户”域中:  

r 表示有读权限。含义是可以拷贝或显示该文件或目录中的内容。  

w 表示有写权限。含义是可以改变或修改该档。  

x 表示有执行权限。含义是可以执行该檔或用cd命令进入该目录,在该目录中建立文件或子目录等。  

– 表示无权限。  

 

2.chmod——变更档案模式( change mode )  

这个指令是用来更改档案的存取模式( access mode )。在 UNIX 一个档案上有可读(r)可写(w)可执行(x)三种模式,分别针对该档案的所有者( onwer )、同组者( group member )( 你可以 ls -lg来观看某一档案的所属的 group ),以及其它人( other )。一个档案如果改成可执行模式则系统就将其视为一个可执行文件,而一个目录的可执行模式代表使用者有进入该目录之权利。chmod 就是用来变更一些档案的模式。  

(1) 格式:chmod [ -fR ] mode filename …  

(2)主要参数的意义如下:  

-f(Force): chmod 不会理会失败的动作。  

-R(Recurive):会将所有子树下的所有子目录及档案改为你所要改成的模式。  

Mode:指改变模式。包括三个方面:  

A.为哪些用户改变  

u——用户本身  

g——同组用户  

o——其它用户  

B.如何改变  

+——增加权限  

-——去掉权限  

C.什么权限  

r——读权限  

w——写权限  

x——执行权限  

 

3.cat——串联显示命令    

4、more——分屏显示文件内容 

more 可以将所观察的档案根据分屏显示出来,并根据使用者的要求换页或卷行。如果使用者要在某一个档案中搜寻一个特定的字符串,则按 / 然后跟着打所要搜寻的单字即可进行搜寻。  如果你在使用中觉得已经看到了所要看的部份,可以按’q’离开 more 的使用。  

在使用中按’v’ 亦可以使用编辑器来编辑所观看的档案。  

格式: more filename  

5、 cd——改变当前目录   格式:cd dirname

6、 cp——拷贝  

     这个指令的意义是复制(“COPY”) , 也就是将一个或多个档案复制成另一个档案或者是将其复制到另一个目录去。  

格式: cp [-fip] source_file target_file (拷贝文件)  

cp [-r|-R][-fip] source_file… target_file (拷贝目录)  

常用参数如下:  

-i : 此参数是当已有檔名为 f2 的档案时,若径自使用 cp 将会将原来 f2的内容掩盖过去,因此在要盖过之前必须先询问使用者一下。如使用者的回答是y(yes)才执行复制的动作。  

-r : 此参数是用来做递回复制用,可将一整颗子树都复制到另一个目录中。  

 

7、mv——移动或改名 

mv 的意义为 move , 主要是将一档案改名或移至另一个目录。  

格式: mv [-fi] source_file… target_file  

主要参数:  

-i : -i 的含义与 cp 的相同,均是 interactive询问之意。  

-f: 强迫( force )执行 。所有其它的参数遇到 -f 均失效。  

 

8、rm——删除  

rm 的意义是 remove ,也就是用来删除一个档案。在 UNIX 中一个被删除的档案除非是系统恰好有做备份,否则是无法像 DOS 里面一样还能够恢复。所以在做 rm 动作的时候使用者应该要特别小心。  

格式: rm [-fiRr] file…  

主要参数:  

-f : 将会使得系统在删除时,不提出任何警告讯息。  

-i : 在除去档案之前均会询问是否真要除去。  

-r : 递归式的删除。  

注意:  不要随便使用 rm -rf , 否则有一天你会”欲哭无泪”……

 

9、mkdir——创建目录  

mkdir 是一个让使用者建立一个目录的指令。你可以在一个目录底下使用  

midir 建立一个子目录。  

格式:mkdir dirname1 [ dirname2 … ]  

10、rmdir——删除目录  

rmdir 是用来将一个”空的”目录删除。如果一个目录下面没有任何档案,你就可以用 rmdir 指令将其除去。  

格式:  rmdir dirname1 [ dirname2 …. ]  

如果一个目录底下有其它的档案, rmdir 将无法将这个目录删除除非使用 rm 指令的 -r 选项。  

 

二、关于进程处理的命令: 

1、ps——显示目前你的 process 或系统 processes 的状况  

格式:  ps [-aAdefl] [-G groups] [-o format] [-p pids] [-t termlist] [-u users] [-U users] [-g pgrplist]  

常用参数:  

-a 列出所有用户的 process 状况。  

-u 显示 user – oriented 的 process 状况 。  

-x 显示包括没有 terminal 控制的 process 状况 。  

-w 使用较宽的显示模式来显示 process 状况 。

 

2、kill——杀进程  

kill 指令的用途是送一个信号给某一个进程。因为大部份送的都是用来杀掉进程 ,因此称为 kill 。  

格式:  

kill [ -SIGNAL ] pid …  

kill -l  

SIGNAL :为一个讯号的数字,从 0 到 31 ,其中 9 是 SIGKILL ,也就是一般用来杀掉一些无法正常终止进程的讯号。  

你也可以用 kill -l 来察看可代替 signal 号码的数目字。  

 

三、用户操作指令  

1、Who——查询目前有那些人在线  

2、w——查询目前有那些人在线上,同时显示出那些人目前的工作  

3、chgrp——改变组的属性  

格式:  chgrp [-R] group file…  

4、chown——改变文件或目录的所有者  

格式:  chown [-R] owner[:group] file… 

5、passwd——更改用户口令  

格式:  passwd 用户名 (后面不跟用户名,为修改root的口令)  

四、网络指令    

1、telnet——仿真终端程序  

telnet 是一个提供 user 经由网络连到 remote host。  

格式:  

telnet [ hostname | ip-address ] [ port ]  

其中:  

hostname:为一个像 ccsun1 或是 ccsun1.cc.nctu.edu.cn 的 name address;  

ip-address:则为一个由四个小于 255 的数字组成的IP地址,如 140.113.17.173 、210.26.147.1等。  

Port:为一些特殊的程序所提供给外界的沟通点。如对方没要求,则不需要此项。  

 

2、ftp——文件传输协议  

ftp 的意义是 File Transfer Program ,是一个很常应用在网络档案传输的  

程序。  

格式:  

ftp [ hostname | ip-address ]  

其中 hostname | ip-address 的意义同telnet 。  

在进入 ftp 之后,如果与 remote host 连接上了,它将会询问你用户名  

与密码,如果输入对了就可以开始进行档案传输。  

ftp中常用命令:  

ascii:将传输模式设为 ascii 模式。通常用于传送文字文件。  

binary:将传输模式设为 binary 模式,通常用于传送执行文件,压缩文件与影像文件等。  

cd remote-directory:将 remote host(远方)上的工作目录改变。  

lcd [ directory ]:更改 local host (本地)的工作目录。  

ls [ remote-directory ] [ local-file ]:列出 remote host 上的档案。  

get remote-file [ local-file ]:取得远方的档案。  

mget remote-files :可使用通用字符一次取得多个档案。  

put local-file [ remote-file]: 将 local host 的档案送到 remote host。  

mput local-files :可使用通用字符一次将多个档案放到 remote host 上。  

help [ command ]: 在线辅助指令。  

mkdir directory-name :在 remote host 造一个目录。  

prompt 更改交谈模式,若为 on 则在 mput 与 mget 时每作一个档案之传  

输时均会询问。  

quit/bye 离开ftp .  

 

五、其他指令    

1、vi——编辑命令  

任何用户最常做的事要数创建和编辑檔,包括文文件、报告和文字,vi(Visual Editor)是一个有效而相对简单的全屏幕编辑,使用vi,只要记着少量基本指令,就可以开始起步,再学习其它更复杂的指令,而系统管理员则使用vi管理和维护系统。  

vi是包含在SCO System V操作系统中的全屏幕编辑,其实,vi不独存在于SCO UNIX内,而是UNIX内相当普及的檔编辑。开启檔无论是开启新檔或修改旧檔,都可以使用vi。  

格式:  #vi filename  

这是执行Vi后的屏幕样式:  

~  

~  

上面是一个经vi开启的模拟档,一行开始处的波折号(~)表示檔的结尾。 vi使用了两种状态,一是指令态(Command Mode),另一是插入态(Insert Mode)。当vi处于指令态时,打入的内容会视作指令来解释;另一方面,当vi处于插入态时,就可以打入正文(text)给檔。  

大多数vi指令是单字元,由插入态改变为指令态,按〈Esc〉键;而由命令态转为插入态,则可以使用下面的插入令,直接打入,无需再按〈Return〉键。  

l 插入  

i 在游标处插入正文  

I 在一行开始处插入正文  

a 在游标后追加正文  

A 在行尾追加正文  

o(小写欧) 在游标下面新开一行  

O(大写欧) 在游标上面新开一行  

要记着一点,在插入态处,不能打入指令,必需先按〈Esc〉键,返回指令态。假若户用不知身处何态,也可以按〈Esc〉键,不管处于何态,都会返回指令态。  

l 存档及退出  

在修改文件时,如何存盘及退出指定文件都非常重要。在vi内,行使存盘或退出的指令时,要先按冒号(:),改变为指令态,用户就可以看见在屏幕左下方,出现冒号(:),显示vi已经改为指令态,可以进行存盘或退出等工作。  

下面就是一些这方面常用的指令。  

:q! 放弃任何改动而退出vi,也就是强行退出  

:w 存档  

:wq 存档并退出vi  

:x 与wq的工作一样  

:zz 与wq的工作一样删除正文  

l 删除  

删除或修改正文都是利用插入态,故此,下面所提及的指令只需在插入态内,直接选入指令即行。  

x 删除光标处字符(Character)  

nx 删除光标处后n个字符  

nX 删除光标处前n个字符  

ndw 删除游标处下n个单词(word)  

dd 删除整行  

d$或D 删除由游标至该行最末  

u 恢复前一次所做的删除  

l 修改正文  

当使用vi修改正文,加减字符时,就会采用另一组在插入态操作的指令。  

— r char由char代替光标处的字符  

—Rtext〈Esc〉由text代替光标处的字符  

—cwtext〈Esc〉由text取代光标处的单词  

—Ctext〈Esc〉由text取代光标处至该行结尾处  

—cc使整行空白,但保留光标位置,让你开始打入  

—如删除指令一样,在指令前打入的数,表示执行该指令多少次。  

l正文模式检索  

要检索文件,必需在指令态下进行。所谓「模式」,就是一个特定字符串,其中可含空格符。  

/str〈Return〉 向前搜寻str直至文件结尾处  

?str〈Return〉 往后搜寻str直至文件开首处  

n 同一方向上重复检索  

N 相反方向上重复检索  

vi缠绕整个檔,不断检索,直至找到与模式相匹配的下一个出现。其它如果要在 vi执行期间,转到shell执行,使用惊叹号(!)执行系指令,例如在vi期间,列出当前目录内容,可以打入:!If  另一方面,用户可以在主目录中创建.exrc环境文件,用set打入选项,每次调用vi时,就会读入.exrc中的指令与设置。

 

2、备份命令:tar(c)  

tar 是对非特权用户最易用和最可靠的实用程序(utility),从归档介质上保留和恢复檔,亦能从多檔归档中抽取单个檔。  

tar 归档使用文件和目录的相对或绝对路径名。  

打入 tar,即会显示所有变量选项,其中:

“cv”是创建归档;  

“cv#”用于来自 /etc/default/tar 的设备号 #;  

“rv”追加已有归档;  

“uv”更新在已有归档上的檔;  

“tv”显示归档内容表;  

“xv”从归档中抽取檔;  

“f”从指定檔中读入或写出;  

“L”使 tar跟随符号连接继续追查下去,默认情况下则会忽略符号连接。  

 

3、Df——显示硬盘空间使用情况  

磁盘空间以块为单位进行分配,典型的块是512字节。

 

4、Du——检测一个目录和(递归地)所有它的子目录中的文件占用的磁盘空间,用块大小标识。  

5、Find——从指定路径开始查找带有规定特征的文件  

6、Date——显示系统日期

7、Format——软盘格式化

8、Haltsys——紧急关机

9、Shutdown——多用户情况下关机  

格式:  #shutdown -g0 -y -i0  

awk 的用法:

https://www.jb51.net/article/157432.htm

 

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/143925.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java中byte类型的范围「建议收藏」

    Java中byte类型的范围「建议收藏」java种为什么byte的范围是-128~127在java中byte类型占8位表示的范围是00000000~11111111总共256个数,java中byte类型有正负,最高位表示正负,0为正,1为负。我们先看正数:00000000~01111111(原码)(0~127,共128个数)我们知道在计算机系统中,数值一律用补码来表示和存储。正数的原码,反码,补码…

  • python3.9多线程_python多线程原理

    python3.9多线程_python多线程原理什么是线程?线程也叫轻量级进程,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位。线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其

  • 机器人系统设计(五)[通俗易懂]

    机器人系统设计1、机器人的定义与组成——机器人是如何组成的各部分的功能:2、机器人系统构建机器人系统构建——执行机构的实现机器人系统构建——驱动系统的实现机器人系统构建——内部传感器系统的实现机器人系统构建——控制系统的实现机器人系统构建——外部传感器系统的实现3、机器人系统构建——连接摄像头       …

  • Allatori混淆动态调试分析

    Allatori混淆动态调试分析0x00前言在家的某天正刷的抖音小姐姐的时候,朋友突然给我扔来一个jar包说是有后门叫我调试分析一下并且把后门去掉。起初以为也没多大事,只要查看代码中疑似后门的地

    2021年12月13日
  • 每天学一点 — CCriticalSection临界区

    每天学一点 — CCriticalSection临界区(转)类CCriticalSection的对象表示一个“临界区”,它是一个用于同步的对象,同一时刻只允许一个线程存取资源或代码区。临界区在控制一次只有一个线程修改数据或其它的控制资源时非常有用。例如,在链表中增加一个结点就只允许一次一个线程进行。通过使用CCriticalSection对象来控制链表,就可以达到这个目的。它就像是一把钥匙,哪个线程获得了它就获得了运行线程的权力,而把其他线程统统阻塞

  • Django(53)二次封装Response

    Django(53)二次封装Response前言有时候我们使用drf的Response,会发现默认返回的格式不太友好,每次我们都需要写入以下的格式returnResponse({"status":0,"

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号