bash shell 基础命令(文件和目录)

  cd   destination   

        cd命令为目录切换命令,可将shell会话切换到另一个目录

        cd命令可以接受单个参数destination,用以指定你想切换到的目录名。如果没有为cd命令指定目标路径,则会切换到用户主目录。

        destination参数可用两种方式表示:绝对路径和相对路径。(具体可查看:http://t.csdn.cn/9SChM

ls

        显示当前目录下的文件和目录:

        [root@localhost ~]# ls
        music  photo  公共  模板  视频  图片  文档  下载  音乐  桌面
        [root@localhost ~]# 

        

         ls -F  (可区分文件和目录,目录名后加/)

        

        ls -a  (可显示隐藏文件,.bash起始的文件为隐藏文件)

        

        ls -R   (-R称递归选项,可列出当前目录包含子目录中的文件,-F帮助分辨文件类型)

                (ls -F -R 可以合并为ls -FR有效)

        

        ls -1

                 产生长列表格式的输出,提供目录中各个文件的详细信息。

               (单个文件的长列表:ls -1d Directory-Name)

        ls -1 my_script     (过滤输出列表)

                问号(?):代表任意单个字符

                星号(*):代表零个或多个字符

                例:ls -1 my_scr?pt

                        ls -1 my*

                方括号([])  代表单个字符位置并给出该位置的多种可能的选择

                        ls -1 my_scr[ay]pt   (可找出my_scrapt和my_scrypt)

                惊叹号(!)将不需要的内容排除

                        ls -1 f[!a]ll    (搜索自动把文件fall排除)

touch

        创建空文件(还可用来改变文件的修改时间,但不会改变文件内容)

cp

        将文件和目录从文件系统的一个位置复制到另一个位置(可用单点号、通配符、命令行补全等)

        cp最基本的用法需要两个参数,即源对象和目标对象:cp source destination。

        (最好加上-i选项,强制shell询问是否需要覆盖已有文件)

        单点号(.)适用于cp命令将源文件复制到当前工作目录中。例:cp /root/linux .

        -R            可用它在单个命令中递归地复制整个目录的内容

        ^可输入man cp来查看所有可用选项

ln

        链接文件是Linux文件系统的一个优势。如果需要在系统中维护同一文件的两个或多个副本,可以使用单个物理副本加多个虚拟副本(链接)的方法代替创建多个物理副本。链接是目录中指向文件真实位置的占位符。在Linux中有两种类型的文件链接:

        硬链接和符号链接

        1、硬链接:创建的是一个独立的虚拟文件,其中包含了原始文件的信息以及位置。但是两者就根本而言是同一个文件。注!想要创建硬链接,原始文件也必须事先存在。

                ln test_one hlink_test_one

        2、符号链接:(也称软链接)是一个实实在在的文件,,该文件指向存放在虚拟目录结构中某个地方的另一个文件。这两个以符号方式链接在一起的文件彼此的内容并不相同。

                要为一个文件创建符号链接,原始文件必须事先存在。然后可以用ln命令以及-s选项来创建符号链接:

                ln -s test_file slink_test_file

                (查看文件或目录的inode编号用ls命令的-i选项)

mv

        mv命令可以将文件和目录移动到另一个位置或者是重命名:

                重命名:

                

        mv命令移动文件:

                

        mv命令也可移动时进行重命名:

                # mv /root/music/fell /root/photo/fall

                        fell移动后就被重命名为fall了。

        mv命令可移动整个目录及其内容

                # mv music photo

                移动后目录名发生改变但目录内容不会改变。

rm

        在Linux中,删除(deleting)叫做移除(removing),文件一旦被删除就再也找不回来了,这里建议用-i选项:

                # rm -i fall

        也可以使用通配符选择删除一组文件,操作需谨慎。

                # rm -i f?ll

        如果你要删除很多文件,又不想被命令提示干扰,可以选择-f选项来强制删除。

mkdir

        创建目录

                # mkdir new_dir

        可以根据需要批量的创建目录和子目录,用-p选项:

                # mkdir -p 1/2/3  ---------创建了三级目录 

rmdir

        删除目录基本命令是rmdir,在默认情况下rmdir命令只删除空目录。如果目录中有文件,可以先删文件再删空目录。也可以在整个非空目录中使用rm命令,-r选项可使rm命令向下进入目录,删除其中文件,然后再删除目录本身。

        一口气删除命令树的最终解决方案是使用rm-rf命令,他能直接删除指定目录和目录中的所有内容。

file

        file命令能快速探测文件内部并判断文件类型

cat

        显示文本文件中所有数据

        #cat -n test_file       -n选项会给所有行加上行号

        -b选项功能为在检查脚本时如果想给有文本的行加上行号

more

        more命令会显示文本文件的内容,但在显示每页数据后会暂停,然后可操作基本移动工作:空格键翻页,Enter键逐行查看,结束后q退出。

less

        为more命令升级版。less命令可以在完成整个文件的读取之前显示文件内容。查看输入man less命令       

tail

           tail命令会显示文件最后几行的内容(文件的‘尾部’)。默认情况下,它会显示文件的末尾10行。在有需求的情况下,可用-n选项来修改所显示的行数:# tail -n 2 log_file    它所表达的意思为显示log_file文件的末尾2行。

        -f选项可允许你在其他进程使用此文件时查看文件内容,tail命令会保持活动状态并持续的显示添加到文件的内容,这是实时监测系统日志的绝佳方法。

head

        head命令会显示文件开头若干行,默认情况下它会显示文件前10行的文本。它也支持-n选项,tail命令和head命令都可简单的在连字符后面直接输入想要显示的行数:

                # head 2 文件名    /    # tail 2 文件名

                (数字也可是负数)

        

猜你喜欢

转载自blog.csdn.net/qq_52416076/article/details/130180059