Linux文件和目录操作命令【未完成】
Linux文件和目录操作命令
(1)cat命令。
cat命令用来在屏幕上滚动显示文件的内容,如同DOS下的type命令。cat命令也可以同时查看多个文件的内容,还可以用来合并文件。cat命令的一般格式如下。
cat[-选项] fileName [filename2]...[fileNameN]
重要选项参数说明如下。
-
-n:由1开始对文件所有输出的行数编号。
-
-b:和-n相似,只不过对于空白行不编号。
-
-s:当遇到有连续两行以上的空白行时就替换为一个空白行。
-
-v:显示非打印字符。
(2)more命令。
如果文本文件比较长,一屏显示不完,这时可以使用more命令将文件内容分屏显示。每次显示一屏文本,显示满屏后停下来,并提示已显示文件内容的百分比,按空格键继续显示下一屏。如同DOS下带参数的type/p命令。
(3)less命令。
less命令的功能与more命令很相似,也是按页显示文件,不同的是less命令在显示文件时允许用户既可以向前也可以向后翻阅文件。按B键向前翻页显示;按P键向后翻页显示【我没成功!】;输入百分比显示指定位置;按Q键退出显示。
(4)文件复制命令cp。
cp命令的功能是把指定的源文件复制到目标文件或是把多个源文件复制到目标目录中。如同DOS下的copy命令一样。cp命令的一般格式如下。
cp [- 选项] sourcefileName | directorydestfileName | directory
重要选项参数说明如下
-
-a:整个目录复制。它保留链接、文件属性,并递归地复制子目录。
-
-f:删除已经存在的目标文件且不提示。
-
-i:和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文,件将被覆盖,是交互式复制。
-
-p:此时cp除复制源文件的内容外,还把其修改时间以及访问权限也复制到新文件中。
-
-R:若给出的源文件是一个目录文件,此时,cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
-
-l:不作复制,只是链接文件。
需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名是一个已存在的文件名,用cp命令复制文件后,这个文件就会被新复制的源文件覆盖,因此,一般在使用cp命令复制文件时使用-i选项。
(5)文件移动命令mv。
mv命令为文件或目录改名或将文件由一个目录移入另一个目录中。
该命令相当于DOS下的ren和move的组合。mv命令的一般格式如下。
mv [-选项] sourcefileName | directorydestfileName | directory
重要选项参数说明如下。
-
-i:交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答y或n,这样可以避免误覆盖文件。
-
-f:禁止交互操作。在mv操作要覆盖某已有的目标文件时不给任何指示,指定此选,项后,i选项将不再起作用。
根据mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数,指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先复制,再将原有文件删除,而链至该文件的链接也将丢失。
需要注意的是,mv与cp的结果不同。mv好像文件“搬家”,文件个数并未增加;而cp对文件进行复制,文件个数增加了。
(6)文件删除命令rm。
rm命令的功能是删除指定的一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。rm命令的一般格式如下。
rm [-选项] fileName | directory...
重要选项参数说明如下。
- -f:忽略不存在的文件,从不给出提示。
测试文件;
比如我要删除shanbi文件夹下的lv文件【文件不存在】
不加选项
加上-f选项
-
-r:指示rm将参数中列出的全部目录和子目录均递归地删除。
-
-i:进行交互式删除。
在使用rm命令时要格外小心,因为一旦文件被删除,它是不能被恢复的。为了防止此种情况的发生,可以使用rm命令中的-i选项来确认要删除的每个文件,如果用户输入y,文件将被删除,否则文件将被保留。
(7)创建目录命令mkdir。
mkdir命令的功能是在当前目录中建立一个指定的目录。要求创建目录的用户在当前目录中具有写权限,并且当前目录中没有与之相同的目录或文件名称。它类似DOS下的md命令。mkdir命令的一般格式如下。
mkdir [-选项] dirName
重要选项参数说明如下。
-
-m:对新建目录设置存取权限,也可以用chmod命令设置。
-
-p:可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建好那些尚不存在的目录,即一次可以建立多个目录。
(8)删除目录命令rmdir。
rmdir命令的功能是从一个目录中删除一个或多个子目录项。在删除某目录时也必须具有对当前目录的写权限。rmdir命令的一般格式如下。
rmdir [-选项] dirName
最常用的参数选项是-p,其作用是递归删除目录,当子目录删除后其父目录为空时,也一同被删除。
例如运行下列命令。
rmdir -p erhuo/erhuo2/erhuo3/lvlvlv.txt/
把erhuo/erhuo2/erhuo3【包括下面的文件】目录删除。
(9)改变目录命令cd。
cd命令的功能是将当前目录改变到指定的目录,若没有指定目录,则显示用户当前所在的主目录路径。cd命令为了改变到指定目录,用户必须拥有对指定目录的执行和读权限。cd命令的一般格式如下。
cd [directory]
cd命令的使用与DOS下的cd命令基本相同,需要注意的是,不管目录名是什么,cd与目录名之间必须有空格。如果直接输入命令cd,而不加任何参数,则回到当前用户的主目录。
例如,假设用户当前目录是/home/sun,现需要更换到/home/sun/pro目录中。【我的目录是/home/lvhanghmm ,更换到Music文件夹】
cd Music
此时,用户可以执行pwd命令来显示工作目录。
(10)显示当前目录命令pwd。
pwd命令的功能是显示用户当前所处的目录,该命令显示整个路径名,并且显示的是当前工作目录的绝对路径。pwd命令的一般格式如下。
pwd
这儿就不做演示了!上面已经演示过了!
每个目录名都用“/”隔开,根目录以开头的“/”表示。
(11)列目录命令ls。
Is命令是英文单词list的简写,其功能为列出当前目录的内容。这是Linux系统中用户最常用和最重要的命令之一,因为用户需要不时地查看某个目录的内容。对于每个目录,Is命令将列出其中的所有子目录与文件。对于每个文件,ls将列出其文件名以及根据命令参数所要求的其他信息。默认情况下,输出条目按字母顺序排列。如果未给出目录名或是文件名,则显示当前目录的信息。该命令类似于DOS下的dir命令。Is命令的一般格式如下。
ls [-选项] fileName | directory
重要选项参数说明如下。
-
-a:显示指定目录下所有子目录与文件,包括隐藏文件。
-
-c:按文件的修改时间排序。
-
-d:如果参数是目录,只显示其名称而不显示其下的各文件。
-
-i:在输出的第一列显示文件的i节点号。
- -l:以长格式来显示文件的详细信息,这是ls命令最常用的参数。使用-l参数每行列出的信息依次是文件类型与访问权限、链接数、文件所有者、文件属组、文件大小、建立或最近修改的时间和名字。
ll命令和ls基本相同,常用参数可通用!遂不做展开介绍!
(12)文件访问权限命令chmod。
chmod命令用于改变文件或目录的访问权限,这是Linux系统管理员最常用到的命令之一。默认情况下,系统将新创建的普通文件的权限设置为-rw-r-r--,将每一个用户所有者目录的权限都设置为drwx----。用户根据需要可以通过命令修改文件和目录的默认存取权限。只有文件所有者或超级用户root才有权用chmod改变文件或目录的访问权限。chmod命令的一般格式如下。
chnod [-选项] mode fileName...
重要选项参数说明如下。
-
-c:若该档案权限确实已经更改,才显示其更改动作。
-
-v:显示权限变更的详细资料。
-
-R:对当前目录下的所有文件与子目录进行相同的权限变更。
-
-mode:权限设定字符串。字符串格式为:
[ugoa--][[+-=][rwxX]][.…]
其中,u表示文件的所有者、g表示与文件的所有者属于同一个组(group)者、o表示其他的人、a表示这三者都是;+表示增加权限、-表示取消权限、=表示唯一设定权限;r表示可读取、w表示可写入、x表示可执行、X表示只有当该文件是一个子目录或文件已经被设定过时可执行。
例如,运行命令:
chmod g+rwx MyFiles.txt
可以为同组用户增加对文件MyFiles.txt的读/写/执行权限。
(13)文件链接命令ln。
ln命令的功能是在文件之间创建链接。这种操作实际上是给系统中已有的某个文件指定另外一个可用于访问它的名称。对于这个新的文件名,可以为其指定不同的访问权限,以控制对信息的共享和安全性的问题。如果链接指向目录,用户就可以利用该链接直接进入被链接的目录而不用输入复杂的路径名。而且,即使删除这个链接,也不会破坏原来的目录。ln命令的一般格式如下。
ln [-选项] sourcefileName | directorydestfileName | directory
重要选项参数说明如下。
-
-f:文件链接时先将与dest同文件名的文件删除。
-
-d:允许系统管理者硬链接自己的目录。
-
-i:在删除与dest同文件名的文件时先进行询问。
-
s:进行符号链接(symbolic link)
-
-v:在文件链接之前显示其文件名。
-
-b:将在链接时会被覆写或删除的文件进行备份。
如果给ln命令加上-s选项,则建立符号链接。如果“链接名”已经存在但不是目录,将不做链接。“链接名”可以是任何一个文件名(可包含路径),也可以是一个目录,并且允许它与“目标”不在同一个文件系统中。如果“链接名”是一个已经存在的目录,系统将在该目录下建立一个或多个与“目标”同名的文件,此新建的文件实际上是指向原“目标”的符号链接文件。
例如运行命令:
ln -s Inlv /home/lvhanghmmtestDOC/shabi/
用户为当前目录下的文件lunch创建了一个符号链接/home/sun。【我的是用错了吧?!后面再改吧!那得何年何月啊!哈哈哈!】
附注:假如Linux下光标消失,不要急
echo -e "\033[?25l" 隐藏光标
echo -e "\033[?25h" 显示光标
本文来自博客园,作者:{lvhanghmm},转载请注明原文链接:https://www.cnblogs.com/lvhanghmm/p/15987134.html