linuxunix操作系统.docx
- 文档编号:2837016
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:27
- 大小:37.33KB
linuxunix操作系统.docx
《linuxunix操作系统.docx》由会员分享,可在线阅读,更多相关《linuxunix操作系统.docx(27页珍藏版)》请在冰点文库上搜索。
linuxunix操作系统
1.Linux操作系统是一个多任务网络操作系统,要求用户按照各自的身份登录上机,而不是把他们一视同仁;分配给某个用户的安全级别是在建立他或她的帐户时就设置好了的。
2.Linux操作系统目录使用正斜杠(/)而不是DOS或者windows中的反斜杠(\)。
举例来说,Linux操作系统中的一个合法目录的写法是/usr/bin。
另外,Linux操作系统中大写字母和小写字母其含义将是完全不同,输入字母"Vi"与输入字母"vi"是不一样的。
Linux操作系统可以接受的文件或者目录名的长度最多为256个字符。
除了字母和数字之外,可以用在文件名中又不引起问题的字符还有句号(.)、下划线(_)和连字号(-)
3.文件存取权限和所有权限
文件的存取权限是使用长格式化文件列表命令(ls-l)列文件清单时出现在最左边的第一数据段。
这个数据段又可以被分解为10个标志位。
A.类型标志位
存取权限数据段的第一位,或者第一个字母表示的是这个项目的类型。
许多不同的项目会用到这个标志位:
.-—表示该项目是一个普通文件
.d—表示该项目是一个目录
.l—表示该项目是一个符号链接
.s—表示该项目是一个可执行文件,不论谁都可以像它的所有者那样调用它运行
.c—表示该项目是一个字符设备驱动程序
.b—表示该项目是一个块设备驱动程序
B.存取权限三位组
存取权限的其余部分每三位一组,分为三组。
类型位后面的第1个三位组定义了其所有者的存取权限。
第2个三位组定义了其所在分组的存取权限;第3个三位组则说明了系统上任何人的存取权限。
每一个三位组是由3个不同的数据位组成的:
.读标志位(r)
.写标志位(w)
.执行标志位(x)
这些标志位永远都按照同一个顺序显示为rwx的形式。
区别某个标志位是处于允许还是禁止的状态就要看该标志位是显示为一个字母还是一个连字符(-)。
举例来说,在rw-存取权限数据段表示读标志位在允许状态、写标志位在允许状态、但是执行标志位就是禁止状态;所以这个三位组就表示具有读和写的权限,但是没有可执行权限。
4.使用date命令的“date-dmm/dd/yyyy”格式设置日期
date命令还有许多其他的格式参数,查询详细资料请输入“mandate”命令。
5.使用date命令的“date-shh:
mm:
ss”格式设置时间
time命令还有许多其他的格式参数,查询详细资料请输入“mandate”命令。
6.ls命令列出某个目录中的内容。
参数使用方法
1每每一行只显示一个文件或者目录
a每列出全部的文件,包括那些以句号(.)开头而平常隐藏起来的文件
c每列出文件上次修改使的日期
l每以长格式列出目录中的内容,其中包括下面的信息:
存取权限、文件的链接个数或者目录中文件的个数、所有者、分组、以字节计算的文件长度、建立日期和文件名
有时候一个目录中的文件太多了,这时需要给ls命令加上“|more”选项。
按照“ls/usr/bin|more”的格式输入命令。
用户将看到屏幕以每次一页的方式显示usr/bin目录中的内容。
7.cd命令切换目录路径
A.直接切换目录路径,使用cd/path的格式就可以。
举例来说,如果想从目录/var/spool/中直接切换到目录/usr/bin中去,直接输入命令“#cd/usr/bin”即可。
输入“#cd~”命令将使用户回到他们的用户目录中去。
在缺省情况下,用户tom有一个名称为/home/tom的用户目录。
以tom的身份登录进入系统的时候,输入“#cd~”命令与输入“#cd/home/tom”命令的效果是完全一样的。
而以根用户身份登录进入系统的时候,输入同样的内容就会把你带到/root目录中去,也就是根用户的用户目录。
B.相对切换目录路径
如果只是想移动到目录结构的上一级去,可以输入“cd..”命令。
举例来说,这个命令可以
把你从目录/var/spool带到目录/var中去。
更进一步地说,输入“cd../..”命令将把你从目录
/var/spool带到根目录“/”中去。
因为在根目录上没有更高一级的目录结构了,所以在目录/var/spool中输入“cd../../..”命令还是把你从目录/var/spool带到根目录而已。
“..”是一个指
向自身的目录索引。
如果你想从一个目录切换到同一个父目录的另外一个目录中去,比如从/etc/rc.d到/etc/skel,你可以使用相对路径格式,输入命令“cd../skel”。
8.pwd命令将显示用户所在位置的完整路径。
9.解读文件和目录清单列表
在任何一个目录中输入“ls-l”命令都会列出一个长格式的文件和目录清单。
举例如下:
-rw-r--r--1lindauser33191Aug1517:
35text
从左到右,这一行数据的意义可以解读如下:
1)这个项目是一个文件而不是目录,因为第一个字母不是d。
2)这个项目是一个文件原本而不是符号链接,因为第一个字母不是l。
3)这个文件的存取权限是“-rw-r--r--”。
4)这个文件指有一个版本,没有任何链接。
5)这个文件的所有者是linda。
6)所有者愿意与之共享存取权限的分组是user组。
7)这个文件的长度是33191个字节。
8)这个文件最后一次的修改日期是8月15日的下午5:
35分。
9)这个文件的名称是text。
10.chmod改变文件和目录的存取权限
命令格式“chmodpermfile”。
使用通配符,你可以一次对多个项目进行修改。
A.使用字母修改
使用字母来修改一个文件的存取权限看起来是很直截了当的,但是当需要进行多重修改的时候,情况就会变得有一些复杂。
这个方法需要使用加号(+)或者减号(-)从每一个存取权限三位组中一次性地对存取权限进行加减。
三位组中的字母“o”代表所有者(owner),“g”代表分组(group),“u”代表用户(user)—也就是其他所有的人。
举例来说,名为“text”的文件在最初的时候其存取权限可能是完全开放的(即存取权限字符串是rwxrwxrwx)。
在大多数情况下,这是一个很差的主意。
因为它只是一个文本文件,所以应该先输入“chmod-xtext”命令把可执行权限去掉。
选择这个存取权限字符串应该是“rw-rw-rw-”。
也许你并不想让其他人—包括普通用户和同组成员等等—能够对这个文件的内容进行修改。
那么输入“chmodu-wg-wtext”命令把存取权限字符串修改为“rw-r--r--”。
B.使用数字修改
使用数字来修改一个文件的存取权限看起来是比较复杂,但是只要了解了如何计算需要的值,就会发现其实这个操作还是很简单的。
设置值是针对每一个三位组分别计算的。
请按照下面的方法为某个项目的存取权限计算数字值:
1)先把存取权限分成三组。
比如说,一个名称为“files”的目录的完全开放的存取权限是“drwxrwxrwr”。
去掉字母d,把其余的部分分断为3个三位组:
rwx、rwx和rwx。
2)每一个字母都有它各自的数值:
.一个字母r是4
.一个字母w是2
.一个字母x是1
根据这个对应关系把每个三位组的值写出来。
如果某一标志位上是字符“-”(连字号),把它算做0。
在上面的例子中,所有的三位组的值都是一样的“421”。
3)把这些数字加在一起就得到每个三位组的存取权限数值。
比如:
“4+2+1=7”。
4)全部3个三位组的值都是一样的,因此这个文件的存取权限值就是“777”
如果想把某个项目的存取权限修改为另外的一个数值,先计算出新设置的数值。
比如说,如果想把前面例子中的“files”目录的存取权限设置为“664”(rw-r--r--),请输入“chmod644files”命令。
11.chown改变文件和目录的所有者
命令格式“chownowneritem”
使用通配符,你可以一次对多个项目进行修改。
12.mkdir建立目录
“mkdirtestbed”命令就可以建立一个名为“testbed”的目录。
可以使用的直接或者相对目录路径进行操作。
13.rmdir和rm删除目录
"rmdir"命令只能删除那些空目录。
"rm-r"命令将删除目录和其中全部的内容,包括下一级的目录。
举例来说,假设用户建立了一个/testbed目录,并且在其中也已经保存了一些测试脚本。
这些脚本经过修修改改之后,用户把那些需要保留的保存到了其他的地方,这里就只剩下那些准备丢弃的了。
现在只要输入"rm-r/testbed"命令就可以删除/testbed目录和它的全部内容。
注意根用户在使用“rm-r”命令的时候有很大的危险性,因为他有删除任何东西的权限。
14.cp拷贝文件和目录
命令格式“cporiginaldestination”或者“cporiginal1original2original3destination”。
(后面一个命令拷贝多个文件到同一个目的地)
注意如果对成组的文件进行拷贝操作的话,那么文件的目的地必须是一个目录。
cp命令还接受下表中的通配符。
比如上面的例子就可以简化为“cporiginal*destination”。
通配符含义
*任意个数的未知字符
[]任何包括在括号中字符范围内的字符
?
任何一个未知的字符
15.mv移动文件和目录
格式“mvoriginaldestination”。
mv命令与cp命令很相似,也可以接受通配符,也允许一次性把多个文件移动到某个目录中去。
mv命令不能在不同的硬盘分区之间传递文件和目录。
这时候只能先把文件和目录拷贝到目的地,然后再删除那些原始文件。
16.rm删除文件
命令“rmfile”。
这个命令接受cp和mv命令使用的同样的通配符,还有“-r”参数。
使用这个命令的时候,前面对根用户的警告信息依然有效。
17.ln建立链接
链接文件是在不制作另外一个拷贝的情况下建立文件之间联系的方法,这样它们就可以同时出现在两个不同的地方。
有两种类型的链接:
硬链接和软链接(符号链接)
A.硬链接
建立一个硬连接就是在节点(inode)级别建立一个指向某些文件的指针。
节点是把文件系统的内容与它们的描述符对应起来的映射表的一部分。
使用“lnsourcelink”的格式建立硬链接。
因为硬链接在文件系统中指向完全一样的同一个位置,所以删除原始文件并不能使该链接失效。
原始文件只有在全部相关硬链接都被删除之后才能被清除。
B.符号链接
建立一个符号链接在被链接的位置生成一个该文件的拷贝,它的存取权限与原始文件的完全相同。
使用“ln-ssourcelink”的格式建立符号链接。
因为符号链接不指向同一个节点,因此删除了原始文件就会使全部的符号链接失效。
有一个RPM包叫做“symlinks”可以帮助用户跟踪查出所有的失效链接—即那些仍然保留在系统中但是指向的是那些已经不存在的程序的符号链接。
18.识别二进制文件
Linux操作系统中的二进制文件通常在他们的文件名上都没有扩展名。
快速分辨某个文件是否是一个二进制文件(程序)的方法是在它的长格式文件清单列表的存取权限中是否有字母x。
字母“x”表示该文件是可执行的,也就是一个程序。
另外一个方法需要按照“filefilename”的格式使用file命令。
19.使用vi文本编辑器程序
vi编辑器是一个小巧但功能强大的程序,vi编辑器有三种基本的模式:
在命令模式按下“i”键进入插入模式,按下ESC键就可以进入到命令模式,从命令模式输入一个冒号(:
)就可以进入冒号模式模式
常见的能够进入编辑模式的vi命令
命令结果
a在当前光标位置后面处直接进入插入模式
A在当前文本行之后进入插入模式
i在当前光标位置前面处直接进入插入模式
I在当前文本行之前进入插入模式
o在光标下面插入一个新行并移动到其上,进入插入模式
O在光标上面插入一个新行并移动到其上,进入插入模式
常见冒号模式的vi命令
命令结果
wq保存并退出文件
w保存文件但不退出
q退出并且不保存文件
q!
退出并不保存所做的修改
常见执行删除操作的vi命令。
命令结果
dd删除整个行
#dd按照输入的数字删除几行,从当前行开始
D删除光标位置后面全部内容
dw删除光标所在位置的单词
20.查看文本文件,不使用文本编辑器程序
A.more和less命令
命令:
“morefilename”或者“lessfilename”命令。
好处:
如果文件的长度超过了一个屏幕,文本会停下来等待用户按下相应的键,然后再滚动显示一屏幕内容。
使用这两个程序的好处之一是它们不需要把整个文件都读入内存后才开始显示其内容,因此它们对任何大小的文件运行得都一样快。
使用more命令阅读文本文件时的常用命令
按键结果
b在文本中后退一行
回车键或者f键在文本中前进一行
h显示帮助信息
空格键前进到文本的下一页
q退出more阅读程序
使用less命令阅读文本文件时的常用命令
按键结果
b在文本中后退一行
回车键在文本中前进一行
f屏幕内容更新一屏
h显示帮助信息
空格键前进到文本的下一页
q退出less阅读程序
y屏幕回退一行
B.cat命令
命令格式“catfilename”,命令会把文件的内容全部显示在屏幕上。
虽然在阅读短文件内容时很有用,但是对长文件还是使用more或者less命令更好一些。
21.重定向(redirection)把命令结果输出到文本文件中
使用大于号(>)的“command>file”格式把某个命令的输出重定向到某个文件中去。
比如:
“ls>listing”。
22.建立别名(alias)
使用一个比较简短的命令来代替原来很长的命令内容。
要想建立别名,需要编辑他们自己用户目录中的.bash_profile文件。
不管用户是使用哪个帐户登录进入系统的,都可以使用“vi~/.bash_profile”命令开始操作。
注意这里介绍的操作只适用于bashshell,它是Linux操作系统缺省使用的shell。
在这个文件的末尾开始建立用户自己的别名语句。
别名的定义格式是“aliasname=‘command'”。
举例来说,如果想把原来的“ls-la”命令定义为别名命令ls,需要加上的别名定义语句是:
aliasls='ls-la'
如果想使用新的别名,请先退出登录再重新登录进入原先的帐户。
注意如果用户想在一台彩色显示器上获得一些花哨的效果,请使用下面的语句:
"alias'ls-laF-colorize=yes'"
23使用find命令确定文件存放位置
基本语法是:
“findstartingpointflagsfilename”。
最常见的使用方法是“find/-namefile”,它从根目录开始查找文件名为file的文件或者包含file文件的目录。
下面列出了一些经常使用的命令行参数和它们的使用方法。
参数说明格式
1).参数atime,根根据此参数说明的修改时间查找文件。
加号(+)表示“在其后”,减号(-)表示“在其先”,没有加减号表示“准确时间”
格式:
findstart-atime+daysfile_name、findstart-atime-daysfile_name、
或者findstart-atimedaysfile_name
示例:
find/etc/rc.d-atime-5
2).参数ctime根查找在此参数指定的时间段内其目录清单列表中的数据发生改变的文件。
加号(+)表示“在其后”,减号(-)表示“在其先”,没有加减号表示“准确时间”
格式:
findstart-ctime+daysfile_name、
findstart-ctime-daysfile_name、
或者findstart-ctimedaysfile_name
示例:
find/-ctime2
3).参数exec,查找符合criteria条件的文件,然后使用command命令来对它们进行处理。
{}(注意括号之间有空格)表示把这些找到的文件放在什么位置;“\”符号用来结束这条命令
格式:
或findstartcriteria-execcommand{}\;
示例:
查find/var/log-ctime-4-execgrep‘http’{}\;
4).参数group,查查找属于此参数说明的分组的那些文件
格式:
findstart-groupgroupname
示例:
find/-groupstaff
5).参数iname,查找文件名是此参数说明的名称的那些文件
格式:
findstart-inamefile_name
示例:
find/home-inamedata
6).参数mtime,查找在此参数指定的时间段内其内容发生改变的文件。
加号(+)表示“在其后”,减号(-)表示“在其先”,没有加减号表示“准确时间”
格式:
findstart-mtime+daysfile_name、
findstart-mtime-daysfile_name、
或者findstart-mtimedaysfile_name
示例:
find/var/log-mtime-10
7).参数name,查找文件名中包含此参数说明的字符串的那些文件
格式:
findstart-namefilename
示例:
find/mnt/cdrom-name'*.rpm'
8).参数print,输出满足查找条件的那些文件和目录的内容
格式:
findstartcriteria-print
示例:
find/home/bob-name'Notes'-print|more
9).参数user,查找属于此参数说明的用户的那些文件
格式:
findstart-userusername
示例:
find/-userjoy
find命令一个特别有用的使用方法是把它与xargs命令结合在一起使用。
xargs命令允许用户把find命令找到的文件名们作为另外一个程序的输入。
一个使用了这种组合方法的例子是:
“find/home/bob-name'Notes'|vi”,这个命令组合将在vi文本编辑器中把文件名中包含了'Notes'字样的全部文件都打开。
24.通过搜索locate数据库来查找文件
locate是在一个包含了文件系统某个时刻全部内容的文件名数据库中去检索数据,而不是真的在文件系统中进行搜索。
但是它要比find命令快得多,如果用户需要查找的文件是在该数据库更新之前建立的,这个命令就可以大显身手了。
命令格式“locatefile”。
输入“updatedb”命令更新数据库。
这个数据库通常是作为一个标准的cron工作被自动更新的。
25.whereis在path语句说明的路径中查找文件
命令格式:
“whereisfile”。
局限性是它只在用户现有的path语句说明的路径中进行查找。
如果某个文件没有存在于这些路径中,它就没有办法找到。
请输入“echo$PATH”命令查看现有路径。
26.在path语句中添加新路径
在bashshell(Linux操作系统的缺省shell)中添加路径语句:
1)使用“vi~/.bash_profile”之类的命令编辑~/.bash_profile文件。
2)找到以PATH开头的语句。
3)在该语句后加上一个冒号(:
),再添上新的路径内容。
4)退出再重新登录进入系统使新设置生效,也可以重新运行这个帐户的profile文件。
举例来说,如果用户使用的是bashshell,请输入“source~/.bash_profile”命令。
27.grep在文件内容中查找文本
命令格式:
“grepflagsexpressionfiles”。
flags是可使用的命令行参数,expression是你想查找的文本,files就是准备在其中进行查找的那些文件。
比如说,我们准备在~/test文件中查找文字“red”,不考虑大小写。
这个命令就是:
“grep-ired~/test”。
参数说明
-i忽略大小写
-n给出文字匹配处那一行的行号
-v显示不匹配expression的那些行
-C显示匹配处前后两行的内容
28.寻求帮助
获得帮助最快的方法是使用man(英文manual的缩写)命令。
它将显示该命令的使用手册页—如果这个命令有使用手册页的话。
“mancommand”打开一个使用手册页;按下q键从中退出。
如果在某个使用手册页的开始部分说明这个文档将不再继续有效,需要另外使用texinfo程序阅读,请使用“infocommand”的格式阅读这个文件。
29.在后台运行命令程序
格式“command”。
30.确定当前运行的命令
A).确定有哪些命令正在运行
使用jobs功能。
输入这个命令后将列出正在后台运行的全部命令的清单—如果有的话。
在这个清单中,最重要的信息通常是工作号,就是那个最左边的数字。
B).确定有哪些进程正在运行
使用ps命令。
它列出的清单中只包括那些在输入这个命令的虚拟控制台上运行的进程。
其中最重要的信息是最左边的数字,即PID(英文进程号ProcessID的缩写)。
31.把命令程序调到后台去
使用bg(英文后台background的缩写)命令可以把当前正在屏幕上运行的命令调入到后台去,这样该终端就可以另做他用。
请按照下面的方法把某个程序调入后台:
1)输入“jobs”命令获取这个命令的工作号job。
2)按下键组合“Alt+FX”,其中X是代表某个空闲终端的功能键的编号。
3)登录进入刚才窗口中使用的同一个帐户。
4)输入“bgjob”把这个工作调入到后台。
这个操作通常有一个简单的完成方法,就是在显示该进程运行结果的终端上按下组合键“Ctrl+Z”。
32.把后台命令调回前台来
如果想把一个正在后台运行的命令调回前台以便对它进行操作,首先要获取工作号,然后使用fg(英文前台foreground的缩写)命令的“fgjob”格式即可。
33.取消正在执行的命令
在Linux操作系统中可以使用好几种方法终止命令的执行。
终止当前正
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linuxunix 操作系统