UNIX中特殊符号的使用
UNIX操作系统常用功能操作系统常用命令

UNIX操作系统常用功能ls功能:显示指定工作目录下之内容语法:ls [参数选项][目录名]说明:显示指定工作目录下的内容参数选项:如下图选项选项说明-a 显示所有文档及目录,包括隐藏文件-l 将文档名、文档类型、权限、拥有者、大小等信息详细列出-r 将文档以相反次序显示(原定按英文字母次序)-t 将文档依修改时间之先后次序列出-A 同 -a ,但不列出“.” (当前目录) 及 ".." (父目录)-F 在列出的文档名称后加一符号;例如可执行文档则加“*”,目录则加“/”,符号链接文件加“@”-R 递归地显示子目录中的内容Dir功能:同 lscd功能:变换工作目录语法:cd [目录名]说明:用于更换工作目录例题:如下1、cd .. 更换目录回到上一级目录2、cd . 更换到当前目录3、cd ~ 更换目录到当前用户的个人宿主目录4、cd /etc/vsftpd/ 更换到/etc/vsftpd目录5、cd / 更换目录到根目录pwd功能:显示用户当前的工作路径,显示出完整的当前活动目录名称。
语法:pwd说明:显示当前工作目录的绝对路径clear功能:在允许的情况下清除屏幕语法:clear说明:清楚屏幕上的信息man功能:查看指令用法的help语法:man [参数选项] 帮助主题。
说明:man实际上就是查看命令用法的help,学习任何一种UNIX类的操作系统最重要的就是学会使用man这个辅助功能。
man是manual(手册)的缩写字,它的说明非常的详细,建议记得一些基本用法就可以了。
mkdir功能:用来建立新的目录语法:mkdir [参数选项] 目录名说明:创建一个空目录,要求此用户在当前目录上具有写权限参数选项:如下图选项选项说明-m mode 为新目录设置访问模式。
-p 如果父目录不存在,创建所有的父目录。
rmdir功能:用来删除已建立的目录语法:rmdir [参数选项]目录名说明:删除一个或多个空目录或空子目录,要求此用户在当前目录上具有写权限rm功能:删除文档及目录。
unix常用命令

其他用户对ncp只有“可执行”的权利。
1.2.3 改变文件属主及文件所在组
改变文件属主的格式如下:
chown 属主名 文件名
必须是文件的属主或超级用户才可改变文件的属主。
改变文件所在组的格式如下:
chgrp 组名 文件名
必须是文件的属主或具有更高级别权限的用户(如超级用户root)才能改变文件组别的归属。
? -l:以长格式列出目录下的文件
? -a:以短格式列出目录下的所有文件(包含隐含文件)
选项可混合使用。
[例子]:
%ls 列出当前目录下的文件(当前目录为tellin目录)。
%ls -al /tellin 以长列表的形式列出目录 /tellin 下的所有文件,包括隐藏文件(“点”文件)。
1.2.2 文件存取权限的修改
用chmod命令修改文件的存取权限,chmod命令的格式如下:
格式1: chmod symbolic_mode file...
格式2: chmod absolute_mode file...
格式1:符号模式(symbolic_mode), 符号模式的命令格式如下:
已经不是cd命令了。
也可以在一行中输入多个命令,命令间用“;”分开,如:
%mkdir tmp;cp file1 tmp/file2 ;ls -l tmp
UNIX会顺序执行以上三条命令。
1.1.2 让命令在后台运行
要让程序在后台执行,只需在命令行的最后加上“&”符号。
[例1] 在后台运行find命令,在当前目录及其子目路下查找文件名为inetcfg.cfg的文件。
UNIX基础

UNIX的内核(Kernel)
. UNIX操作系统的组件 . 内核的主要功能
UNIX 文件系统
. UNIX文件系统 . 树型目录结构 . UNIX 文件权限
UNIX的壳(Shell)
. Shell的功能 . Vi
UNIX操作系统的历史 :
1960 年 1969 年 1970 年 1973年 70年代中期 AT&T公司开发MULTICS系统,Ken Thompson AT&T 发布UNIX的第一个试用版 AT&T 开发有技术支持的UNIX版本 C编写的 UNIX 加州大学柏克莱分校(BSD)及其他大学 也开发了相应的UNIX版本 80年代早期 商业版本的UNIX发布 90年代早期 IEEE制定新的UNIX标准(POSIX)
Aug 23 2000 Aug 23 2000 Aug 23 2000 Oct 20 2000 Dec 20 16:06
lib -> ./usr/lib lost+found mnt mytemp a.txt
drwxr-xr-x -rw-r--r--
2 root 1 root
other other
drwxr-xr-x -rw-r--r--
2 root 1 root
other other
512 23
Oct 20 2000 mytemp Dec 20 16:06 a.txt
UNIX系统树型目录结构 :
/
b i n
c l i u b s r d e e v t
s t s u y 1 b a s e
相对路径
s t u 1 s y b a s e
a t a p ra o g r m d
it n s a l l
操作系统UNIX系统及答案

UNIX系统练习题(一)单项选择题1.由于与系统的绝大局部程序都用c语言写成,因此它具有( )的特点。
A有效简练 B.易移植 c.可扩大 D.开放性2.使命令的执行结果不在屏幕上显示,而是写到另一个文件中去,这种功能称为 A.脱机输出 B.管道 c联机输出 D.输出重定向3.能把第一条命令的输出作为第二条命令的输入的功能是由( )机制实现的。
A链接 B.批处理 c.管道 D.输出重定向4.由父进程执行系统调用fork创建一个子进程,那个子进程的初始状态为( )。
A.创建状态 B.睡眠状态 c.就绪状态 D.僵死状态5.UNIX System v系统中,存储管理主要采用( )。
A.对换技术 B.页式虚拟存储 c段式存储管理 D段页式虚拟存储6.UNIX系统中在磁盘上开辟对换区作为内存的逻辑扩大,在治理对换空间时采纳了( )。
A.空闲区表 B.位示图 c.块表 D.映射图7.特别文件是指与( )有关的文件。
A.文本 B.图像 c.外围设备 D二进制代码8 UNIX对磁盘中索引节点区进展治理时,把索引节点区空闲块的块号放至( )。
A.引导块 B.超级块 c.索引节点区 D.文件存储区9 UNIX系统中把设备也当作文件对待,所有设备文件都放在( )目录中。
A./bin B./lib C./dev d./usr10.在块设备管理时,由( )为设备驱动程序提供信息. A空闲缓冲区队列 B.设备缓冲区队列 c.设备开关表 D.设备I/O请求队列(二)填空题1.UNIX是一个交互式的______操作系统,采用以全局变量为中心的______构造。
2.UNIX的系统构造可分成______和______两局部。
3.内核层是UNIX系统的核心,它实现存储治理、______ 、设备治理和______等功能,并为外壳层提供系统挪用。
4 外壳层由______、高级语言的编译和说明程序、______和系统库组成。
2 4 UNIX常用命令介绍word资料18页

2 4 UNIX常用命令介绍2.4 UNIX常用命令介绍用户对某一操作系统的认识,往往是从使用和接触操作系统开始的,而接触操作系统最常用的方法就是使用操作系统的命令。
尽管现代操作系统都对用户提供交互式的图形界面,但在使用操作系统时仍不可避免地要用到命令操作方式,这是因为图形界面的处理也是建立在命令处理的基础之上的。
有经验的人都知道,使用命令处理的效率往往会比使用图形界面处理高出很多,而可视化的图形界面主要解决的问题是提供友好交互和摆脱枯燥的命令记忆方式。
2.4.1 UNIX命令使用方法当某个用户正确地通过了系统的注册和登录后,就进入到UNIX的命令管理程序shell的第一个进程中。
shell可以完成UNIX 命令的解释执行过程,它大体上可以分成两类:一类是shell的内部命令,另一类是shell的外部命令。
对用户来讲,内、外部命令在使用方法上没有太多的差异,只是在响应时间上略有不同。
当用户发出内部命令时,系统可直接从内存中选择调用与执行。
而shell的外部命令是那些功能较强、占用空间较大的扩展命令,它们一般不包含在shell中,因此在系统启动时并不被装入内存,只是在使用时才从系统的指定存储介质中调入内存,用完后就释放所占用的内存空间。
外部命令往往功能强大,因此所占用的磁盘空间和内存空间都比较大,甚至有些外部命令实际上就是一个实用程序,它所占用的空间和处理过程的复杂度可以与一个小型系统规模相比,因此对外部命令的管理通常包含着对内、外存空间的控制和管理。
1.UNIX的命令格式使用UNIX命令的方法可以有多种,例如,可以在命令行上输入命令,或是将命令编写在批处理文件中。
无论怎样,命令的使用格式是统一的,UNIX的一般命令格式为:Command[-options][arguments]其中:Command表示UNIX命令名。
[options]表示命令的执行选项,可以取默认值。
[arguments]表示命令的执行参数,可以默认。
C# 斜杠和反斜杠

正斜杠(/)与反斜杠(\)总结正斜杠/表示除法,分隔。
在windows系统中通常用来分隔命令行参数,/表示选项等。
不能作为文件名。
反斜杠\,在windows系统中用来表示目录。
而在unix系统中,/表示目录。
由于web遵循unix命名,所以在网址(URL)中,/表示目录。
C#中反斜杠\与斜杠/ 转移字符路径的问题在C#中\ 是转义字符,如下所示转义序列字符\‟单引号\”双引号\\ 反斜杠\0 空\a 警告\b 退格\f 换页\n 换行\r 回车\t 水平制表符\v 垂直制表符就比如说要输出这一段字符串“/_\” 可能你会认为是这样写@""/_\""但这样写编译器都不让你通过了,但看上表所示,你可以这么写"\"/_\\\""另外在获取文件路径的时候很多人喜欢用d:\test.txt然后就会发生所谓的转义字符错误了解决的办法一般人是使用@d:\test.txt 我不知道这样写是否会带来一些问题但我一直的做法是d:/test.txt 也完全可以访问在网上找了下, 似乎斜杠与反斜杠最大的区别就是网络中不能以斜杠在windows系统中通常用来分隔命令行参数,/表示选项等。
算术运算符/用来取商,如5/2=2.5引用说明:有正斜杠与反斜杠之分,正斜杠,一般就叫做斜杠,符号为“/”;反斜杠的符号为“\” 引用斜杠(/)在JAVA中没有什么特别的意义,就是代表一个字符…/‟;反斜杠(\)则不然,它和紧跟着它的那个字符构成转义字符,如“\n”(表示换行)、“\””(表示字符…”‟)等,所以在字符串中要表示字符'\'要用“\\”来表示,例:如果你这样定义一个字符串String s = “name\sex”是错误的,要这样定义String s = “name\\sex”;引用注意:在正则表达式中的“\\”表示和后面紧跟着的那个字符构成一个转义字符(姑且先这样命名),代表着特殊的意义;所以如果你要在正则表达式中表示一个反斜杠\,应当写成“\\\\”。
unix通配符格式

在Unix系统中,通配符是用于匹配文件名或路径的特殊字符。
常用的Unix通配符有以下几种格式:
1. 星号(*):表示匹配任意长度的任意字符(包括空字符)。
例如,`*.txt`可以匹配所有以`.txt`结尾的文件。
2. 问号(?):表示匹配单个任意字符。
例如,`file?.txt`可以匹配类似于`file1.txt`、`fileA.txt`等文件。
3. 方括号([]):用于指定一个字符范围,只匹配方括号中列出的字符之一。
可以使用连字符(-)表示范围。
例如,`[aeiou]`可以匹配任意一个元音字母。
4. 取反符号(^):在方括号内使用,表示匹配除了方括号中列出的字符之外的任意一个字符。
例如,`[^0-9]`可以匹配除数字以外的任意一个字符。
5. 大括号({}):用于指定多个选择项,用逗号分隔。
例如,`{file1,file2}.txt`可以匹配`file1.txt`和`file2.txt`两个文件。
需要注意的是,通配符在不同的Unix shell中可能略有不同的行为。
在大多数情况下,通配符会自动匹配当前目录下的文件或路径。
但是,在某些特殊情况下,可能需要使用绝对路径或特定的命令行参数来匹配文件或路径。
总之,通配符是Unix系统中用于模式匹配的强大工具,可以帮助我们快速筛选和操作文件。
1。
unix用户名规则

unix用户名规则Unix用户名规则Unix操作系统是一种广泛应用于服务器和工作站的操作系统。
在Unix系统中,每个用户都有一个唯一的用户名用于登录和识别。
Unix用户名规则是为了保证用户名的唯一性和安全性而制定的一系列规定。
本文将介绍Unix用户名规则的相关内容。
一、用户名长度限制Unix系统对用户名的长度有限制,通常限制为8个字符。
这是因为Unix系统在存储用户信息时,只能存储固定长度的字段,超过8个字符的用户名会被截断。
二、用户名字符限制Unix系统对用户名的字符有一定限制。
一般情况下,用户名只能由字母和数字组成,且必须以字母开头。
用户名中可以包含下划线(_)和减号(-)等特殊字符,但不能包含空格和其他特殊符号。
三、用户名的大小写敏感性Unix系统在对待用户名时是区分大小写的。
例如,用户名"John"和"john"被认为是两个不同的用户。
因此,在创建用户名时需要注意大小写的正确使用。
四、用户名的含义Unix用户名通常是根据用户个人信息或组织信息来命名的。
用户名可以代表用户的姓名、职位、部门等信息,以便于识别和管理。
五、用户名的唯一性Unix系统要求每个用户的用户名必须是唯一的,不可重复。
这是为了确保用户之间的身份和权限的独立性。
六、保留用户名Unix系统中有一些特殊的用户名被系统保留,不能用于普通用户。
这些用户名通常用于系统服务或特定权限的用户,例如"root"用于超级用户,"bin"用于存放系统二进制文件等。
七、用户名的修改在Unix系统中,用户可以通过特定的命令或配置文件修改自己的用户名。
但需要注意的是,修改用户名可能会导致一些权限和配置文件的失效,因此需要谨慎操作。
八、用户名的安全性为了保证系统的安全性,Unix系统对用户名有一些安全性要求。
例如,用户名不应与系统命令或关键词重复,以免误操作或命令注入。
此外,用户名也不应包含敏感信息,以防泄露。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
更好地理解UNIX® 用户输入的这些“奇怪的” 字符。
学习如何在UNIX 中使用管道、重定向、操作符等特性。
现在,您已经在IBM® AIX® 上工作了一段时间了。
您已经学习了几个基本命令,能够在目录结构中移动、创建和修改文件、查看正在运行的进程以及管理用户和系统。
这很不错,但是您希望了解UNIX® 管理员输入的命令是什么意思。
这些命令中包含许多奇怪的符号。
在本文中,了解|、>、>>、<、<<、[[和]]等符号在UNIX 和Linux® 中的意思,以及如何使用&&、||、<、<=和!=操作符。
管道如果您熟悉UNIX,那么管道(或pipe)会是每天都要接触到的东西。
管道最初是由Malcolm McIlroy 开发的,可以使用管道把一个命令的标准输出(stdout)定向到下一个命令的标准输入(stdin),这样就形成了连续执行的命令链。
可以在一个命令行上使用多个管道。
在许多时候,一个命令的stdout 用作下一个命令的stdin,第二个命令的stdout 又被重定向到另一个命令的stdin,依此类推。
例如,在排除故障或执行日常检查时,大多数UNIX 管理员首先做的事情之一是查看系统上当前正在运行的进程。
清单1演示这样的检查。
清单 1. 日常进程检查示例# ps –efUID PID PPID C STIME TTY TIME CMDroot 1 0 0 Jul 27 - 0:05 /etc/initroot 53442 151674 0 Jul 27 - 0:00 /usr/sbin/syslogdroot 57426 1 0 Jul 27 - 0:00 /usr/lib/errdemonroot 61510 1 0 Jul 27 - 23:55 /usr/sbin/syncd 60root 65634 1 0 Jul 27 - 0:00 /usr/ccs/bin/shlap64root 82002 110652 0 Jul 27 - 0:24 /usr/lpp/X11/bin/X -x abx-x dbe -x GLX -D /usr/lib/X11//rgb -T -force :0 -auth /var/dt/A:0-SfIdMaroot 86102 1 0 Jul 27 - 0:00 /usr/lib/methods/ssa_daemon -l ssa0root 106538 151674 0 Jul 27 - 0:01 sendmail: accepting connectionsroot 110652 1 0 Jul 27 - 0:00 /usr/dt/bin/dtlogin -daemonroot 114754 118854 0 Jul 27 - 20:22 dtgreetroot 118854 110652 0 Jul 27 - 0:00 dtlogin <:0> -daemonroot 131088 1 0 Jul 27 - 0:07 /usr/atria/etc/lockmgr-a /var/adm/atria/almd -q 1024 -u 256 -f 256root 147584 1 0 Jul 27 - 0:01 /usr/sbin/cronroot 155816 151674 0 Jul 27 - 0:04 /usr/sbin/portmaproot 163968 151674 0 Jul 27 - 0:00 /usr/sbin/qdaemonroot 168018 151674 0 Jul 27 - 0:00 /usr/sbin/inetdroot 172116 151674 0 Jul 27 - 0:03 /usr/sbin/xntpdroot 180314 151674 0 Jul 27 - 0:19 /usr/sbin/snmpmibdroot 184414 151674 0 Jul 27 - 0:21 /usr/sbin/aixmibdroot 188512 151674 0 Jul 27 - 0:20 /usr/sbin/hostmibdroot 192608 151674 0 Jul 27 - 7:46 /usr/sbin/muxatmdroot 196718 151674 0 11:00:27 - 0:00 /usr/sbin/rpc.mountdroot 200818 151674 0 Jul 27 - 0:00 /usr/sbin/biod 6root 213108 151674 0 Jul 27 - 0:00 /usr/sbin/nfsd 3891root 221304 245894 0 Jul 27 - 0:05 /bin/nsrexecddaemon 225402 151674 0 11:00:27 - 0:00 /usr/sbin/rpc.statdroot 229498 151674 0 11:00:27 - 0:00 /usr/sbin/rpc.lockdroot 241794 151674 0 Jul 27 - 0:51 /usr/lib/netsvc/yp/ypbindroot 245894 1 0 Jul 27 - 0:00 /bin/nsrexecdroot 253960 1 0 Jul 27 - 0:00 ./mflm_managerroot 274568 151674 0 Jul 27 - 0:00 /usr/sbin/sshd -Droot 282766 1 0 Jul 27 lft0 0:00 /usr/sbin/getty /dev/consoleroot 290958 1 0 Jul 27 - 0:00 /usr/lpp/diagnostics/bin/diagdroot 315646 151674 0 Jul 27 - 0:00 /usr/sbin/lpdroot 319664 1 0 Jul 27 - 0:00 /usr/atria/etc/albd_serverroot 340144 168018 0 12:34:56 - 0:00 rpc.ttdbserver 100083 1root 376846 168018 0 Jul 30 - 0:00 rlogindcormany 409708 569522 0 19:29:27 pts/1 0:00 -kshroot 569522 168018 0 19:29:26 - 0:00 rlogindcormany 733188 409708 3 19:30:34 pts/1 0:00 ps -efroot 749668 168018 0 Jul 30 - 0:00 rlogind系统上当前正在运行的进程的列表可能像清单1这么简单;但是,大多数生产系统运行的进程更多,这会使ps的输出更长。
为了把这个列表缩短到自己需要的范围,可以使用管道把ps –ef的标准输出重定向到grep,从而搜索自己真正希望看到的结果。
清单2把清单1产生的进程列表重定向到grep,搜索字符串“rpc” 和“ksh”。
清单 2. 把进程列表重定向到grep当多次把stdout 重定向到stdin 时,管道的使用方法可以很复杂。
在下面的示例中,扩展了前面的ps和grep示例,把它的stdout 重定向到另一个grep,其作用是排除包含“grep” 或“ttdbserver” 的字符串。
当最后的grep 操作完成时,再次使用管道把stdout 重定向到一个awk语句,其作用是输出进程标识符(PID)大于200,000 的所有进程:图 1通过图形说明命令的 stdout 重定向到后续命令的 stdin 的次序。
图 1. 管道示例用 >、>>、< 和 << 执行数据重定向通过命令行界面(CLI )执行命令的另一个重要方面是,能够把各种输出写到一个设备,或者把来自另一个设备的输入读取到命令中。
要想写一个命令的输出,需要在执行的命令后面加上大于号(> 或 >>)和所需的目标文件名或设备。
如果目标文件不存在,而且您对目标目录有写权限,那么 > 和 >> 会创建这个文件并根据您的 umask 设置权限,然后把命令的输出写到刚创建的文件中。
但是,如果这个文件存在,> 会尝试打开文件并覆盖整个内容。
如果希望在这个文件中追加内容,那么只需使用 >>。
可以认为它的作用是把左边命令的输出数据流移动到右边的目标文件中(即 <cmd> -> <output> -> <file>)。
下面的示例执行 “管道” 一节中的 ps –ef 示例,并把输出重定向到文件 ps_out :回页首下面的代码执行前面扩展的管道示例并把输出重定向到同一个文件(ps_out),但是追加到当前数据后面:清单3给出前两个重定向的输出。
清单 3. 重定向的输出当只使用>重定向输出时,只重定向命令的stdout。
但是,除了stdout,还有stderr 输出:前者表示为1,后者表示为2。
在UNIX 中输出重定向没有区别。
只需在>前面加上所需的输出类型(例如,1>、2>),告诉shell 要把输出路由到哪里。
清单4尝试列出fileA.tar.bz2 和fileC.tar.bz2。
但是,如第一个命令(ls)所示,fileC.tar.bz2 不存在。
好在可以把stdout 和stderr 分别重定向到ls.out 和ls.err,这样就能够看到错误消息。
清单 4. 列出文件fileA.tar.bz2 和fileC.tar.bz2在AIX 中,对stdout 和stderr 使用>和>>时应用相同的规则。
例如,以后的测试可以使用相同的输出文件,见清单5。
清单 5. 使用输出文件进行以后的测试有时候,可能需要把stdout 和stderr 写到同一个文件或设备。
这有两种方法。
第一种方法是把1>和2>重定向到同一个文件:第二个方法更简单更快速,有经验的UNIX 用户更喜欢采用这种方法:我们分解这个语句。
首先,执行ls fileA.tar.bz2 fileC.tar.bz2。
然后使用> ls.out把stdout 重定向到ls.out,使用2>&1把stderr 重定向到前面重定向的stdout(ls.out)。