linux目录操作
Ⅰ 新手必备的linux操作命令
一、cd命令(切换目录 )
(1)切换到目录 /usr/local
cd /usr/local
(2)去到目前的上层目录
cd ..
(3)回到自己的主文件夹
cd ~
二、ls命令(查看文件与目录)
(4)查看目录/usr下所有的文件
cd /usr ls -al
三、mkdir命令(新建新目录 )
(5)进入/tmp目录,创建一个名为a的目录,并查看有多少目录存在
cd /tmp
mkdir a ls -al
(6)创建目录a1/a2/a3/a4
mkdir -p a1/a2/a3/a4
四、 rmdir命令(删除空的目录)
(7)将上例创建的目录a(/tmp下面)删除
rmdir a
(8)删除目录a1/a2/a3/a4,查看有多少目录存在
rmdir -p a1/a2/a3/a4
ls -al
五、cp命令(复制文件或目录 )
(9)将主文件夹下的.bashrc复制到/usr下,命名为bashrc1
sudo cp ~/.bashrc /usr/bashrc1
(10)在/tmp下新建目录test,再复制这个目录内容到/usr
cd /tmp
mkdir test
sudo cp -r /tmp/test /usr
六、mv命令(移动文件与目录,或更名)
(11)将上例文件bashrc1移动到目录/usr/test
sudo mv /usr/bashrc1 /usr/test
(12)将上例test目录重命名为test2
sudo mv /usr/test /usr/test2
七、rm命令:移除文件或目录
(13)将上例复制的bashrc1文件删除
sudo rm /usr/test2/bashrc1
(14)将上例的test2目录删除
sudo rm -r /usr/test2
八、cat命令:查看文件内容
(15)查看主文件夹下的.bashrc文件内容
cat ~/.bashrc
九、tac命令:反向列示
(16)反向查看主文件夹下.bashrc文件内容
tac ~/.bashrc
十、more命令:一页一页翻动查看
(17)翻页查看主文件夹下.bashrc文件内容
more ~/.bashrc
十一、head命令:取出前面几行
(18)查看主文件夹下.bashrc文件内容前20行
head -n 20 ~/.bashrc
(19)查看主文件夹下.bashrc文件内容,后面50行不显示,只显示前面几行
head -n -50 ~/.bashrc
十二、tail命令:取出后面几行
(20)查看主文件夹下.bashrc文件内容最后20行
tail -n 20 ~/.bashrc
(21) 查看主文件夹下.bashrc文件内容,只列出50行以后的数据
tail -n +50 ~/.bashrc
十三、touch命令:修改文件时间或创建新文件
(22)在/tmp下创建一个空文件hello并查看时间
cd /tmp
touch hello ls -l hello
(23)修改hello文件,将日期调整为5天前
touch -d “5 days ago” hello
十四、chown命令:修改文件所有者权限
(24)将hello文件所有者改为root帐号,并查看属性
sudo chown root /tmp/hello
ls -l /tmp/hello
十五、find命令:文件查找
(25)找出主文件夹下文件名为.bashrc的文件
find ~ -name .bashrc
十六、tar命令:压缩命令
(26)在/目录下新建文件夹test,然后在/目录下打包成test.tar.gz
sudo mkdir /test
sudo tar -zcv -f /test.tar.gz test
(27)解压缩到/tmp目录
sudo tar -zxv -f /test.tar.gz -C /tmp
十七、grep命令:查找字符串
(28)从~/.bashrc文件中查找字符串'examples'
grep -n 'examples' ~/.bashrc
Ⅱ linux操作系统中 拷贝目录的命令是什么
在linux系统中复制文件我们可以使用cp或命令了,我们要复制文件或目录都可以使用它们两来完成哦,下面我来给大家介绍cp或命令与复制目录到指定目录的命令吧。 命令 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,同MSDOS下的命令一样,功能十分强大。
语法: cp [选项] 源文件或目录 目标文件或目录 说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
该命令的各选项含义如下: - a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。 - d 拷贝时保留链接。 - f 删除已经存在的目标文件而不提示。 - i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。 - p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。 - r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。 - l 不作拷贝,只是链接文件。
需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名已存在,用cp命令拷贝文件后,这个文件就会被新源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。
例1 复制指定目录下的全部文件到另一个目录中 文件及目录的复制是经常要用到的。linux下进行复制的命令为cp。 假设复制源目录 为 dir1 ,目标目录为dir2。怎样才能将dir1下所有文件复制到dir2下了 如果dir2目录不存在,则可以直接使用 cp -r dir1 dir2 即可。 如果dir2目录已存在,则需要使用 cp -r dir1/. dir2 如果这时使用cp -r dir1 dir2,则也会将dir1目录复制到dir2中,明显不符合要求。 ps:dir1、dir2改成对应的目录路径即可。
例2 复制指定文件到指定文件夹 首先建立一个用于测试的目录,用'tree'命令查看其结构如下所示: 可见,目录中主要包含用于测试的*.txt文件和用于充当炮灰的*。tes文件 目标是保持当前的目录结构,只把txt文件复制出来
方法一:当不需要的文件类型较为单一时,可以通过完全复制然后删除指定类型的文件完成 Step1 使用命令 cp -r test/ test2 将测试目录test下所有内容完全复制到test2,此时树形结构如下图 Step2 组合使用find及xargs,将*.tes文件删除 xargs是给命令传递参数的一个过滤器,可以将前一个命令产生的输出作为后一个命令的参数 命令find test2/ -name '*.tes' |xargs rm -rf, 即将find产生的输出(test2目录下的所有tes文件),作为rm的参数,从而完全删除 实际效果如图所示 适用场景举例:把项目文件备份,要去除其中的.svn文件,可以采用这种方式
方法二:需要的文件为单一类型,带目录结构复制 这种情况下可以使用tar命令将指定类型的文件打包,然后解包,同样需要组合使用find和xargs Step1 建立目录test3 mkdir test3 Step2 将指定类型文件带目录结构打包 find test/ -name '*.txt' |xargs tar czf test3.tgz Step3 解包到目录test3 tar zxvf test3.tgz -C test3
Ⅲ Linux系统中对文件和目录操作的命令有哪些
Pwd:显示当前所在的位置
cd:切换目录
tree:以树形结构显示目录下的内容
mkdir:创建目录
touch:创建空文件或改变文件的时间戳属性
ls:显示目录下的内容及相关属性信息
cp:复制文件或目录
mv:移动或重命名文件
rm:删除文件或目录
rmdir:删除空目录
ln:硬链接与软链接
readlink:查看符号链接文件的内容
find:查找目录下的文件
xargs:将标准输入转换成命令行参数
rename:重命名文件
basename:显示文件名或目录名
dirname:显示文件或目录路径
chattr:改变文件的扩展属性
lsattr:查看文件扩展属性
file:显示文件的类型
md5sum:计算和校验文件的MD5值
chown:改变文件或目录的用户和用户组
chmod:改变文件或目录权限
chgrp:更改文件用户组
umask:显示或设置权限掩码
Ⅳ Linux系统常用操作命令有哪些
ls 列出目录内容和文件信息 -a 用来显示所有的文件 -l 用来查看文件的各种属性 -r 逆字母母录显示 -R 递归显示每个子目录下的目录 -h 易读性 cat和more查看文本文件 cat 查看文件内容 -n 在每一行前显示行号 阅读文件的开头和结尾 head和tail head -n 20 显示文件的前20行 tail -n 20 显示文件后20行 less 更好的文本阅读工具 文件目录管理 mkdir:建立目录 -v显示创建目录的过程 -p用虚完整的创建字目录 rmdir:删处目录 rm:删处文件 -i 删除文件前提示 -r 递归的删除目录下所有的文件和子目录 -f 强形删处 -rf 不提示强形删除r目录 mv:移动和重命名目录 -i 提示移动时是否覆盖目录 cp : 复制文件和目录 - i 提示是否覆盖以存在的目录 -r 连同目录与文件一起复制 -p 保留权限属性 linux系统主要目录及其内容: /bin:构建最小系统所需要的命令 二进制命令 /boot:内核与启动文件 /dev:各设备文件 /etc:系统软件的启动和配置文件 /home:用户的主目录 /lib:C编译的库 /media: 可移动介质的安装点 /opt:可选的应用软件包 /proc:进程的映像 /root:超级用户root的主目录 /sbin:和系统操作有关的命令 /tmp:临时文件存放点 /usr:非系统的程序和命令 /var:系统专用的数据和配置文件值。 什么是相当路径和决定路径? 相对路径:一定是有/目录写起。 绝对路径:不是由/目录写起的。 linux严格区分大小写 . :当前目录 .. : 当前目录的上级目录 ~ : 当前的用户的家目录 locole -a 显示linux 支持的语言软件包 logout 退出命令 tty 显示当前登录的终端 startx & 切换用户 shift+ctrl+c 复制 shift+ctrl +v 粘贴 终端:终端分为虚拟终端,图像终端,为终端 快速切换用户:su 语法 su[option][arguments] history 查看当前操作的命令历史 -c 删除历史 !n 查看操作命令 !! 重复 上一条命令 !—n重复倒数的n条命令
Ⅳ 如何进入Linux根目录
用LINUX SHELL命令。
用法:
cd “你想要进的目录” //当目录名称中含有空格、中文或其它特殊字符时请用双引号包括
以下是最常用的几个目录的写法:
1、/ 代表根目录
2、.当前目录
3、.. 上级目录
4、~ 当前用户的默认工作目录
注:目录可以省略不写, 与cd ~ 有相同的效果。
Linux根目录结构:
(5)linux目录操作扩展阅读:
Linux Shell常用shell命令
Linux Shell常用shell命令
一、文件、目录操作命令
1、ls命令
功能:显示文件和目录的信息
ls以默认方式显示当前目录文件列表
ls -a 显示所有文件包括隐藏文件
ls -l 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行
ls -lh 显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G)
ls -lt 显示文件,按照修改时间排序
2、cd命令
功能:改名目录
cd dir切换到当前目录下的dir目录
cd /切换到根目录
cd ..切换到到上一级目录
cd ../..切换到上二级目录
cd ~切换到用户目录,比如是root用户,则切换到/root下
3、cp命令
功能:文件
cp source target将文件source复制为target
cp /root /source.将/root下的文件source复制到当前目录
cp –av soure_dir target_dir将整个目录复制,两目录完全一样
4、rm命令
功能:删除文件或目录
rm file删除某一个文件
rm -f file 删除时候不进行提示。可以于r参数配合使用
rm -rf dir删除当前目录下叫dir的整个目录
5、mv命令
功能:将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令
mv source target将文件source更名为target
6、diff
功能:比较文件内容
diff dir1 dir2比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出
diff file1 file2比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的
comm file1 file2比较文件,显示两个文件不相同的内容
Ⅵ Linux目录及文件如何操作
处理目录的常用命令
接下来我们就来看几个常见的处理目录的命令吧:
ls(英文全拼:list files): 列出目录及文件名
cd(英文全拼:change directory):切换目录
pwd(英文全拼:print work directory):显示目前的目录
mkdir(英文全拼:make directory):创建一个新的目录
rmdir(英文全拼:remove directory):删除一个空的目录
cp(英文全拼: file): 复制文件或目录
rm(英文全拼:remove): 删除文件或目录
mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称
- [root@www ~]# ls [-aAdfFhilnrRSt] 目录名称
- [root@www ~]# ls [--color={never,auto,always}] 目录名称
- [root@www ~]# ls [--full-time] 目录名称
-a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
-d :仅列出目录本身,而不是列出目录内的文件数据(常用)
-l :长数据串行出,包含文件的属性与权限等等数据;(常用)
- [root@www ~]# ls -al ~
- cd [相对路径或绝对路径]#使用 mkdir 命令创建 runoob 目录
- [root@www ~]# mkdir runoob
- #使用绝对路径切换到 runoob 目录
- [root@www ~]# cd /root/runoob/
- #使用相对路径切换到 runoob 目录
- [root@www ~]# cd ./runoob/
- # 表示回到自己的家目录,亦即是 /root 这个目录
- [root@www runoob]# cd ~
- # 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思;
- [root@www ~]# cd ..
- [root@www ~]# pwd [-P]
-P :显示出确实的路径,而非使用连结 (link) 路径。
- [root@www ~]# pwd
- /root <== 显示出目录啦~
- [root@www ~]# cd /var/mail <==注意,/var/mail是一个连结档
- [root@www mail]# pwd
- /var/mail <==列出目前的工作目录
- [root@www mail]# pwd -P
- /var/spool/mail <==怎么回事?有没有加 -P 差很多~
- [root@www mail]# ls -ld /var/mail
- lrwxrwxrwx 1 root root 10 Sep 4 17:54 /var/mail -> spool/mail
- # 看到这里应该知道为啥了吧?因为 /var/mail 是连结档,连结到 /var/spool/mail
- # 所以,加上 pwd -P 的选项后,会不以连结档的数据显示,而是显示正确的完整路径啊!
- mkdir [-mp] 目录名称
-m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
-p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!
- [root@www ~]# cd /tmp
- [root@www tmp]# mkdir test <==创建一名为 test 的新目录
- [root@www tmp]# mkdir test1/test2/test3/test4
- mkdir: cannot create directory `test1/test2/test3/test4':
- No such file or directory <== 没办法直接创建此目录啊!
- [root@www tmp]# mkdir -p test1/test2/test3/test4
- [root@www tmp]# mkdir -m 711 test2
- [root@www tmp]# ls -l
- drwxr-xr-x 3 root root 4096 Jul 18 12:50 test
- drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1
- drwx--x--x 2 root root 4096 Jul 18 12:54 test2
- rmdir [-p] 目录名称
-p :连同上一级‘空的’目录也一起删除
- [root@www tmp]# rmdir runoob/
- [root@www tmp]# ls -l <==看看有多少目录存在?
- drwxr-xr-x 3 root root 4096 Jul 18 12:50 test
- drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1
- drwx--x--x 2 root root 4096 Jul 18 12:54 test2
- [root@www tmp]# rmdir test <==可直接删除掉,没问题
- [root@www tmp]# rmdir test1 <==因为尚有内容,所以无法删除!
- rmdir: `test1': Directory not empty
- [root@www tmp]# rmdir -p test1/test2/test3/test4
- [root@www tmp]# ls -l <==您看看,底下的输出中test与test1不见了!
- drwx--x--x 2 root root 4096 Jul 18 12:54 test2
- [root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
- [root@www ~]# cp [options] source1 source2 source3 .... directory
-a:相当于 -pdr 的意思,至于 pdr 请参考下列说明;(常用)
-d:若来源档为连结档的属性(link file),则复制连结档属性而非文件本身;
-f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
-i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
-l:进行硬式连结(hard link)的连结档创建,而非复制文件本身;
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
-r:递归持续复制,用于目录的复制行为;(常用)
-s:复制成为符号连结档 (symbolic link),亦即‘捷径’文件;
-u:若 destination 比 source 旧才升级 destination !
- [root@www ~]# cp ~/.bashrc /tmp/bashrc
- [root@www ~]# cp -i ~/.bashrc /tmp/bashrc
- cp: overwrite `/tmp/bashrc'? n <==n不覆盖,y为覆盖
- rm [-fir] 文件或目录
-f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
-i :互动模式,在删除前会询问使用者是否动作
-r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
- [root@www tmp]# rm -i bashrc
- rm: remove regular file `bashrc'? y
- [root@www ~]# mv [-fiu] source destination
- [root@www ~]# mv [options] source1 source2 source3 .... directory
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
-u :若目标文件已经存在,且 source 比较新,才会升级 (update)
- [root@www ~]# cd /tmp
- [root@www tmp]# cp ~/.bashrc bashrc
- [root@www tmp]# mkdir mvtest
- [root@www tmp]# mv bashrc mvtest
- [root@www tmp]# mv mvtest mvtest2
cat 由第一行开始显示文件内容
tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
nl 显示的时候,顺道输出行号!
more 一页一页的显示文件内容
less 与 more 类似,但是比 more 更好的是,他可以往前翻页!
head 只看头几行
tail 只看尾巴几行
- cat [-AbEnTv]
-A :相当于 -vET 的整合选项,可列出一些特殊字符而不是空白而已;
-b :列出行号,仅针对非空白行做行号显示,空白行不标行号!
-E :将结尾的断行字节 $ 显示出来;
-n :打印出行号,连同空白行也会有行号,与 -b 的选项不同;
-T :将 [tab] 按键以 ^I 显示出来;
-v :列出一些看不出来的特殊字符
- [root@www ~]# cat /etc/issue
- CentOS release 6.4 (Final)
- Kernel on an m
- [root@www ~]# tac /etc/issue
- Kernel on an m
- CentOS release 6.4 (Final)
- nl [-bnw] 文件
-b :指定行号指定的方式,主要有两种:
-b a :表示不论是否为空行,也同样列出行号(类似 cat -n);
-b t :如果有空行,空的那一行不要列出行号(默认值);-n :列出行号表示的方法,主要有三种:
-n ln :行号在荧幕的最左方显示;
-n rn :行号在自己栏位的最右方显示,且不加 0 ;
-n rz :行号在自己栏位的最右方显示,且加 0 ;-w :行号栏位的占用的位数。
- [root@www ~]# nl /etc/issue
- 1 CentOS release 6.4 (Final)
- 2 Kernel on an m
- [root@www ~]# more /etc/man_db.config
- #
- # Generated automatically from man.conf.in by the
- # configure script.
- #
- # man.conf from man-1.6d
- ....(中间省略)....
- --More--(28%) <== 重点在这一行喔!你的光标也会在这里等待你的命令
空白键 (space):代表向下翻一页;
Enter :代表向下翻‘一行’;
/字串 :代表在这个显示的内容当中,向下搜寻‘字串’这个关键字;
:f :立刻显示出档名以及目前显示的行数;
q :代表立刻离开 more ,不再显示该文件内容。
b 或 [ctrl]-b :代表往回翻页,不过这动作只对文件有用,对管线无用。
- [root@www ~]# less /etc/man.config
- #
- # Generated automatically from man.conf.in by the
- # configure script.
- #
- # man.conf from man-1.6d
- ....(中间省略)....
- : <== 这里可以等待你输入命令!
空白键 :向下翻动一页;
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
/字串 :向下搜寻‘字串’的功能;
?字串 :向上搜寻‘字串’的功能;
n :重复前一个搜寻 (与 / 或 ? 有关!)
N :反向的重复前一个搜寻 (与 / 或 ? 有关!)
q :离开 less 这个程序;
- head [-n number] 文件
-n :后面接数字,代表显示几行的意思
- [root@www ~]# head /etc/man.config
- [root@www ~]# head -n 20 /etc/man.config
- tail [-n number] 文件
-n :后面接数字,代表显示几行的意思
-f :表示持续侦测后面所接的档名,要等到按下[ctrl]-c才会结束tail的侦测
你可以使用 man [命令] 来查看各个命令的使用文档,如 :man cp。
ls (列出目录)
在Linux系统当中, ls 命令可能是最常被运行的。
语法:
选项与参数:
将家目录下的所有文件列出来(含属性与隐藏档)
cd (切换目录)
cd是Change Directory的缩写,这是用来变换工作目录的命令。
语法:
接下来大家多操作几次应该就可以很好的理解 cd 命令的。
pwd (显示目前所在的目录)
pwd 是 Print Working Directory 的缩写,也就是显示目前所在目录的命令。
选项与参数:
实例:单纯显示出目前的工作目录:
实例显示出实际的工作目录,而非连结档本身的目录名而已。
mkdir (创建新目录)
如果想要创建新的目录的话,那么就使用mkdir (make directory)吧。
语法:
选项与参数:
实例:请到/tmp底下尝试创建数个新目录看看:
加了这个 -p 的选项,可以自行帮你创建多层目录!
实例:创建权限为 rwx--x--x 的目录。
上面的权限部分,如果没有加上 -m 来强制配置属性,系统会使用默认属性。
如果我们使用 -m ,如上例我们给予 -m 711 来给予新的目录 drwx--x--x 的权限。
rmdir (删除空的目录)
语法:
选项与参数:
删除 runoob 目录
将 mkdir 实例中创建的目录(/tmp 底下)删除掉!
利用 -p 这个选项,立刻就可以将 test1/test2/test3/test4 一次删除。
不过要注意的是,这个 rmdir 仅能删除空的目录,你可以使用 rm 命令来删除非空目录。
cp (复制文件或目录)
cp 即拷贝文件和目录。
语法:
选项与参数:
用 root 身份,将 root 目录下的 .bashrc 复制到 /tmp 下,并命名为 bashrc
rm (移除文件或目录)
语法:
选项与参数:
将刚刚在 cp 的实例中创建的 bashrc 删除掉!
如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!
mv (移动文件与目录,或修改名称)
语法:
选项与参数:
复制一文件,创建一目录,将文件移动到目录中
将某个文件移动到某个目录去,就是这样做!
将刚刚的目录名称更名为 mvtest2
Linux 文件内容查看
Linux系统中使用以下命令来查看文件的内容:
你可以使用 man [命令]来查看各个命令的使用文档,如 :man cp。
cat
由第一行开始显示文件内容
语法:
选项与参数:
检看 /etc/issue 这个文件的内容:
tac
tac与cat命令刚好相反,文件内容从最后一行开始显示,可以看出 tac 是 cat 的倒着写!如:
nl
显示行号
语法:
选项与参数:
实例一:用 nl 列出 /etc/issue 的内容
more
一页一页翻动
在 more 这个程序的运行过程中,你有几个按键可以按的:
less
一页一页翻动,以下实例输出/etc/man.config文件的内容:
less运行时可以输入的命令有:
head
取出文件前面几行
语法:
选项与参数:
默认的情况中,显示前面 10 行!若要显示前 20 行,就得要这样:
tail
取出文件后面几行
语法:
选项与参数:
[root@www ~]# tail /etc/man.config
# 默认的情况中,显示最后的十行!若要显示最后的 20 行,就得要这样:
[root@www ~]# tail -n 20 /etc/man.config