Linux基本操作命令Word下载.docx
《Linux基本操作命令Word下载.docx》由会员分享,可在线阅读,更多相关《Linux基本操作命令Word下载.docx(18页珍藏版)》请在冰豆网上搜索。
lrwxrwxrwx1rootroot4Nov2419:
30zcat->
gzip
-rwxr-xr-x1rootbin308364Nov297:
43zsh*
-rwsr-x---1rootbin9853Aug155:
46su*
下面,我为大家解释一下这些显示内容的意义。
第一个栏位,表示文件的属性。
Linux的文件基本上分为三个属性:
可读(r),可写(w),可执行(x)。
但是这里有十个格子可以添(具体程序实现时,实际上是十个bit位)。
第一个小格是特殊表示格,表示目录或连结文件等等,d表示目录,例如drwx------;
l表示连结文件,如lrwxrwxrwx;
如果是以一横“-”表示,则表示这是文件。
其余剩下的格子就以每3格为一个单位。
因为Linux是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x为例):
rwx(Owner)r-x(Group)r-x(Other)
这个例子表示的权限是:
使用者自己可读,可写,可执行;
同一组的用户可读,不可写,可执行;
其它用户可读,不可写,可执行。
另外,有一些程序属性的执行部分不是X,而是S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。
一般出现在系统管理之类的指令或程序,让使用者执行时,拥有root身份。
第二个栏位,表示文件个数。
如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了。
第三个栏位,表示该文件或目录的拥有者。
若使用者目前处于自己的Home,那这一栏大概都是它的账号名称。
第四个栏位,表示所属的组(group)。
每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。
第五栏位,表示文件大小。
文件大小用byte来表示,而空目录一般都是1024byte,你当然可以用其它参数使文件显示的单位不同,如使用ls–k就是用kb来显示一个文件的大小单位,不过一般我们还是以byte为主。
第六个栏位,表示创建日期。
以“月,日,时间”的格式表示,如Aug155:
46表示8月15日早上5:
46分。
第七个栏位,表示文件名。
我们可以用ls–a显示隐藏的文件名。
ls–F(注意,是大写的F)
使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@表示连结文件,这都是因为使用了-F这个参数。
但是现在基本上所有的Linux发行版本的ls都已经内建了-F参数,也就是说,不用输入这个参数,我们也能看到各种分辨符号。
cd
cd[changedirectory]
这个命令是用来进出目录的,它的使用方法和在dos下没什么两样,所以我觉得没什么可说的,但有两点我补充一下。
首先,和dos不同的是Linux的目录对大小写是敏感的,如果大小写没拼对,你的cd操作是成功不了的。
其次,cd如果直接输入,cd后面不加任何东西,会回到使用者自己的HomeDirectory。
假设如果是root,那就是回到/root.这个功能同cd~是一样的。
mkdir、rmdir
mkdir[makedirectory]rmdir[removedirectory]
mkdir命令用来建立新的目录,rmdir用来删除已建立的目录,这两个指令的功能不再多加介绍,他们同dos下的md,rd功能和用法都是基本一样的。
cp
cp[copy]
这个命令相当于dos下面的copy命令,具体用法是:
cp–r源文件(source)目的文件(target)
参数r是指连同源文件中的子目录一同拷贝。
熟悉dos的读者用起这个命令来会觉得更方便,毕竟比在dos下面要少敲两下键盘。
rm
rm[remove]
这个命令是用来删除文件的,和dos下面的rm(删除一个空目录)是有区别的,大家千万要注意。
rm命令常用的参数有三个:
-i,-r,-f。
比如我现在要删除一个名字为test的一个文件:
rm–itest
系统会询问我们:
“rm:
remove‘test’?
y”,敲了回车以后,这个文件才会真的被删除。
之所以要这样做,是因为linux不象dos那样有undelete的命令,或者是可以用pctool等工具将删除过的文件救回来,linux中删除过的文件是救不回来的,所以使用这个参数在删除前让你再确定一遍,是很有必要的。
rm–r目录名:
这个操作可以连同这个目录下面的子目录都删除,功能上和rmdir相似。
rm–f文件名(目录名):
这个操作可以进行强制删除。
mv
mv[move]
这个命令的功能是移动目录或文件,引申的功能是给目录或文件重命名。
它的用法同dos下面的move基本相同,这里不再多讲。
当使用该命令来移动目录时,他会连同该目录下面的子目录也一同移走。
如果你想给一个文件或目录重命名时可以用以下方法:
mv原文件(目录)名新的文件(目录)名。
du,df
du[diskusage]
du命令可以显示目前的目录所占的磁盘空间,df命令可以显示目前磁盘剩余的磁盘空间。
如果du命令不加任何参数,那么返回的是整个磁盘的使用情况,如果后面加了目录的话,就是这个目录在磁盘上的使用情况(这个功能可是dos没有的呦)。
不过我一般不喜欢用du,因为它给出的信息是在是太多了,我看不过来,而df这个命令我是最常用的,因为磁盘上还剩多少空间对我来说是很重要的。
cat
cat[concatenate]
这个命令是linux中非常重要的一个命令,它的功能是显示或连结一般的ascii文本文件。
cat是concatenate的简写,类似于dos下面的type命令。
它的用法如下:
cattext显示text这个文件;
catfile1file2依顺序显示file1,file2的内容;
catfile1file2>
file3把file1,file2的内容结合起来,再“重定向(>
)”到file3文件中。
“〉”是一个非常有趣的符号,是往右重定向的意思,就是把左边的结果当成是输入,然后输入到file3这个文件中。
这里要注意一点是file3是在重定向以前还未存在的文件,如果file3是已经存在的文件,那么它本身的内容被覆盖,而变成file1+file2的内容。
如果〉左边没有文件的名称,而右边有文件名,例如:
cat>
file1:
结果是会“空出一行空白行”,等待你输入文字,输入完毕后再按[Ctrl]+[c]或[Ctrl]+[d],就会结束编辑,并产生file1这个文件,而file1的内容就是你刚刚输入的内容。
这个过程和dos里面的copyconfile1的结果是一样的。
另外,如果你使用如下的指令:
catfile1>
>
file2:
这将变成将file1的文件内容“附加”到file2的文件后面,而file2的内容依然存在,这种重定向符〉〉比〉常用,可以多多利用。
more,less
这是两个显示一般文本文件的指令。
如果一个文本文件太长了超过一个屏幕的画面,用cat来看实在是不理想,就可以试试more和less两个指令。
More指令可以使超过一页的文件临时停留在屏幕,等你按任何的一个键以后,才继续显示。
而less除了有more的功能以外,还可以用方向键往上或往下的滚动文件,所以你随意浏览,阅读文章时,less是个非常好的选择。
pwd
pwd[printworkingdirectory]
pwd[--help][--version]
说明:
执行pwd指令可立刻得知您目前所在的工作目录的绝对路径名称。
clear
这个命令是用来清除屏幕的,它不需要任何参数,和dos下面的cls具有相同的功能,如果你觉得屏幕太紊乱,就可以使用它清除屏幕上的信息。
ln
ln[link]
这是linux中又一个非常重要命令,请大家一定要熟悉。
它的功能是为某一个文件在另外一个位置建立一个不同的链接,这个命令最常用的参数是-s,具体用法是:
ln源文件–s目标文件。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
例如:
ln/bin/less–s/usr/local/bin/less
-s是代号(symbolic)的意思。
这里有两点要注意:
第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;
第二,ln的链接有软链接和硬链接两种,软链接就是ln–s****,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln****,没有参数-s,它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。
如果你用ls察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用ln命令生成的文件,用ls–l命令去察看,就可以看到显示的link的路径了。
grep
用于查找文件中符合字符串的那行。
e.g.grep-nr"
network_ssl"
./[查找当前文件夹下所有文件内容,列出包含有network_ssl该字串的行,并显示行号]
参数说明:
-a:
将binary文件以text文件的方式搜寻数据
-c:
计算找到'
搜寻字符串'
的次数
-i:
忽略大小写的不同,所以大小写视为相同
-n:
顺便输出行号
-v:
反向选择,亦即显示出没有'
内容的那一行!
find
$find.-name"
*.txt"
-print用于查找所有的‘*.txt’文件在当前目录及子目录中;
[A-Z]*"
-print用于当前目录及子目录中查找文件名以一个大写字母开头的文件;
$find/etc-name"
host*"
-print在/etc目录中查找文件名以host开头的文件;
$find.-name"
[a-z][a-z][0--9][0--9].txt"
-print在当前目录查找文件名以两个小写字母开头,跟着是两个数字,最后是.txt的文件;
1、find命令的一般形式为;
findpathname-options[-print-exec-ok...]
2、find命令的参数;
pathname:
find命令所查找的目录路径。
例如用.来表示当前目录,用/来表示系统根目录。
-print:
find命令将匹配的文件输出到标准输出。
-exec:
find命令对匹配的文件执行该参数所给出的shell命令。
相应命令的形式为'
command'
{}\;
,注意{}和\;
之间的空格。
-ok:
和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
3、find命令选项
-name
按照文件名查找文件。
-perm
按照文件权限来查找文件。
-prune
使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。
-user
按照文件属主来查找文件。
-group
按照文件所属的组来查找文件。
-mtime-n+n
按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。
find命令还有-atime和-ctime选项,但它们都和-mtime选项。
-nogroup
查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。
-nouser
查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在。
-newerfile1!
file2
查找更改时间比文件file1新但比文件file2旧的文件。
-type
查找某一类型的文件,诸如:
b-块设备文件。
d-目录。
c-字符设备文件。
p-管道文件。
l-符号链接文件。
f-普通文件。
-sizen:
[c]查找文件长度为n块的文件,带有c时表示文件长度以字节计。
-depth:
在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。
-fstype:
查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。
-mount:
在查找文件时不跨越文件系统mount点。
-follow:
如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。
-cpio:
对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。
另外,下面三个的区别:
-aminn
查找系统中最后N分钟访问的文件
-atimen
查找系统中最后n*24小时访问的文件
-cminn
查找系统中最后N分钟被改变文件状态的文件
-ctimen
查找系统中最后n*24小时被改变文件状态的文件
-mminn
查找系统中最后N分钟被改变文件数据的文件
-mtimen
查找系统中最后n*24小时被改变文件数据的文件
ar
功能说明:
建立或修改备存文件,或是从备存文件中抽取文件。
语法:
ar[-dmpqrtx][cfosSuvV][a<
成员文件>
][b<
][i<
][备存文件][成员文件]
补充说明:
ar可让您集合许多文件,成为单一的备存文件。
在备存文件中,所有成员文件皆保有原来的属性与权限。
参数:
指令参数
-d删除备存文件中的成员文件。
-m变更成员文件在备存文件中的次序。
-p显示备存文件中的成员文件内容。
-q将文件附加在备存文件末端。
-r将文件插入备存文件中。
-t显示备存文件中所包含的文件。
-x自备存文件中取出成员文件。
选项参数
a<
将文件插入备存文件中指定的成员文件之后。
b<
将文件插入备存文件中指定的成员文件之前。
c建立备存文件。
f为避免过长的文件名不兼容于其他系统的ar指令指令,因此可利用此参数,截掉要放入备存文件中过长的成员文件名称。
i<
将问家插入备存文件中指定的成员文件之前。
o保留备存文件中文件的日期。
s若备存文件中包含了对象模式,可利用此参数建立备存文件的符号表。
S不产生符号表。
u只将日期较新文件插入备存文件中。
v程序执行时显示详细的信息。
rpm
一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。
它生成具有.RPM扩展名的文件,与Dpkg类似。
RPM是RedHatPackageManager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及TurboLinux等Linux的分发版本都有采用,可以算是公认的行业标准了。
常用rpm命令
查询rpm软件包
#rpm-q软件包名
#rpm-qa//查询安装的所有软件包
#rpm-qa|grep软件包字符串
#rpm-qf/bin/命令//查询命令由哪些软件包安装得到
#rpm-qi软件包名//查询软件包的详细信息
#rpm-ql软件包名//查询软件包的安装位置
软件包的安装
#rpm-ivh软件包
软件包的升级
#rpm-Uvh软件包
软件包的卸载
#rpm-e软件包名
文件打包
#tar-cvf[文件名.tar][文件……目录]
查看包文件的内容
#tar-tf文件名.tar
向已有的包中添加新文件
#tar-rvf[文件名.tar][新文件……]
释放包文件#tar-xvf文件名.tar
压缩文件#gzip文件名
解压缩文件
#gzip-d文件名.gz或#gunzip文件名.gz
创建压缩包
#tar-zcvf[文件名.tar.gz][文件1文件2…]
查看压缩包中的内容
#tar-ztf文件名.tar.gz
释放压缩包
#tar-zxvf文件名.tar.gz
mount,umount
mount是Linux下的一个命令,它可以将分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将分区和/mnt这个目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了。
目前mount已经不仅仅局限于Linux了,在Windows系统下的应用也越来越广了,多用在虚拟光驱类软件上,比如CloneCD,Daemontool,WinMount等。
注意事项
1、必须将光盘、U盘等放入驱动器在实施挂载操作
2、不能在挂载目录下实施挂载操作,至少在上一级
3、不能在同一目录下挂载两个以上的文件系统
4、Linux预留挂载目录为/mnt
5、不能在挂载目录下实施卸载操作
6、挂载目录必须事先存在
挂载光盘
#mount-tiso9660/dev/cdrom/mnt/cdrom
卸载光盘
#umount/mnt/cdrom或#umount/dev/cdrom或#cd;
eject
挂载U盘
#mount/dev/sdb1/mnt/usb
挂载iso镜像
#mount-tiso9660-oloopiso镜像文件/mnt/cdrom
用户和组管理
#useradd用户名//创建用户和组
#passwd用户名//设置用户密码
#groupadd组名//创建组
#usermod–d路径用户名//修改用户宿主目录
#usermod–uuid用户名//修改用户的UID
#usermod-s/bin/[csh]用户名//修改用户启动shell
#usermod-G组名用户名//将用户加入组,创建私有组
#usermod-g组名用户名//用户加入组但不创建私有组
#gpasswd-a用户名组名//同-G
#gpasswd-d用户名组名//将用户从组中删除
#gpasswd-A用户名组名//指定用户成为组的管理员
#usermod-L用户名//锁定用户#passwd-l用户名//同上
#usermod-U用户名//解锁用户#passwd-u用户名//同上
#usermod-l新名原名//重命名用户
#groupmod-n新名原名//重命名组
#userdel用户名//删除用户#userdel–r用户名/