linux中 关于目录 有几个重要概念

一个是 / 根目录  还有一个当前用户的家目录 比如 root用户的家目录是 /root  普通用户的家目录是/home/xxx 下

root登录 默认家目录 是root 我们这里先用 cd .. 进入 / 根目录

[root@localhost ~]# cd ..

[root@localhost /]#

然后我们看下 根目录  / 下有哪些目录

[root@localhost /]# ls

bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

[root@localhost /]#

我们用 cd 回到家目录

[root@localhost /]# cd

[root@localhost ~]#

创建目录命令  mkdir (make directories)

比如在/root 下建一个 书籍目录

[root@localhost ~]# mkdir 书籍

[root@localhost ~]# ls

anaconda-ks.cfg  书籍

[root@localhost ~]#

假如我们要递归创建目录和文件

[root@localhost ~]# mkdir 书籍2/java编程思想

mkdir: 无法创建目录"书籍2/java编程思想": 没有那个文件或目录

发现失败了 默认不准递归创建 要递归创建的话 家-p

[root@localhost ~]# mkdir -p 书籍2/java编程思想

[root@localhost ~]# ls

anaconda-ks.cfg  书籍  书籍2

[root@localhost ~]# ls /root/书籍2/

java编程思想

[root@localhost ~]#

切换所在目录,cd (change directory)

简化操作

cd ~     进行当前用户的家目录

cd

cd - 进入上次目录

cd .. 进入上一级目录

cd . 进入当前目录

我们先进入 /root/书籍2/ 目录

然后cd ~ 回到家目录 /root/

然后 cd - 进入上次目录 也就是 /root/书籍2/ 目录

再cd.. 进入 /root/目录

cd .没啥意义(注意cd后面要加个空格);

[root@localhost ~]# cd /root/书籍2/

[root@localhost 书籍2]# cd ~

[root@localhost ~]# cd -

/root/书籍2

[root@localhost 书籍2]# cd ..

[root@localhost ~]# cd.

-bash: cd.: 未找到命令

[root@localhost ~]# cd .

[root@localhost ~]#

目录补全以及命名补全  tag键

比如 切换目录 /usr 假如记不清楚 直接 /u 然后 tag键,则自动补全;

[root@localhost ~]# cd .

[root@localhost ~]# cd /usr/

[root@localhost usr]#

比如要输入一些命令 useradd 假如记不清出了

直接输入 user 然后tab键

[root@localhost ~]# user

useradd     userdel     usermod     usernetctl  users

[root@localhost ~]# useradd

会把所有user开头的命令都显示出来;

pwd命令(print working directory)打印工作目录

就是打印当前位置

[root@localhost ~]# pwd

/root

[root@localhost ~]#

删除空目录: rmdir (remove empty directories)

rmdir [目录名]

我们删除root下的空目录 书籍 试下

[root@localhost ~]# ls

anaconda-ks.cfg  书籍  书籍2

[root@localhost ~]# rmdir 书籍/

[root@localhost ~]# ls

anaconda-ks.cfg  书籍2

[root@localhost ~]#

发现没问题

我们删除 书籍2目录时,

[root@localhost ~]# rmdir 书籍2/

rmdir: 删除 "书籍2/" 失败: 目录非空

[root@localhost ~]#

报错了,因为 书籍2 目录 非空;

这里的话 假如要删除 书籍2 目录 我们需要先把书籍2里面的文件或者目录先删除,然后才能删除书籍2目录,

这个是非常不现实的,所以 rmdir命令了解即可,以后基本不用的。

删除文件或目录:rm  (remove)

rm -rf [文件或目录]

选项:

-r 删除目录

-f 强制

我们用 touch命令新建一个空文件

然后用rm命令删除

[root@localhost ~]# touch java牛

[root@localhost ~]# ls

anaconda-ks.cfg  java牛  书籍2

[root@localhost ~]# rm java牛

rm:是否删除普通空文件 "java牛"?n

[root@localhost ~]# ls

anaconda-ks.cfg  java牛  书籍2

[root@localhost ~]# rm java牛

rm:是否删除普通空文件 "java牛"?y

[root@localhost ~]# ls

anaconda-ks.cfg  书籍2

[root@localhost ~]#

删除文件会提醒是否删除,输入n 不删除 输入y 删除;

假如我们删除 书籍2 目录

[root@localhost ~]# rm 书籍2/

rm: 无法删除"书籍2/": 是一个目录

报错,假如要用rm删除目录,必须 加 -r

[root@localhost ~]# rm -r 书籍2/

rm:是否进入目录"书籍2/"? y

rm:是否删除目录 "书籍2/java编程思想"?y

rm:是否删除目录 "书籍2/"?y

[root@localhost ~]# ls

anaconda-ks.cfg

依然提示我们是否要删除,假如有一万个文件 那得输入y到手麻;

我们用 mk -rf 来强制删除 无需提醒

[root@localhost ~]# mkdir -p 书籍2/java编程思想

[root@localhost ~]# ls

anaconda-ks.cfg  书籍2

[root@localhost ~]# rm -rf 书籍2/

[root@localhost ~]# ls

anaconda-ks.cfg

[root@localhost ~]#

这样方便很多  直截了当;以后用删除 就用 rm -rf 命令即可;

复制命令:cp   (copy)

cp [选项] [源文件或目录] [目标目录]

选项:

-r 复制目录

-p 连带文件属性复制

-d 若源文件是链接文件,则复制链接属性

-a 相当于 -pdr

我们复制下文件

[root@localhost ~]# ls

anaconda-ks.cfg

[root@localhost ~]# cp anaconda-ks.cfg /tmp/abc

[root@localhost ~]# ls

anaconda-ks.cfg

[root@localhost ~]# ls /tmp/

abc

ks-script-p0Ci4J

systemd-private-12ece3aaa1eb44678dbf684dbccbc32f-vmtoolsd.service-xjTV7r

systemd-private-3588b18d27f94b80849d22621ef2defb-vmtoolsd.service-wmk7Jt

systemd-private-90f54554da784e52aeb890d207e41094-vmtoolsd.service-I8F1Yy

systemd-private-d5f08625d54e4ed3a0faa9b9fb944db5-vmtoolsd.service-4rHPpX

systemd-private-f68c251a6a6c46ac94b4c1e73090ef59-vmtoolsd.service-S6J6U0

systemd-private-f7cb736915b24ef2b72faee1ec860c6d-vmtoolsd.service-ldpfcl

yum.log

把 root下的anaconda-ks.cfg复制到了 tmp下 并且重名为 abc

假如 cp anaconda-ks.cfg /tmp/abc 不加文件名 则新文件名称不变

[root@localhost ~]# cp anaconda-ks.cfg /tmp/

[root@localhost ~]# ls /tmp/

abc

anaconda-ks.cfg

ks-script-p0Ci4J

systemd-private-12ece3aaa1eb44678dbf684dbccbc32f-vmtoolsd.service-xjTV7r

systemd-private-3588b18d27f94b80849d22621ef2defb-vmtoolsd.service-wmk7Jt

systemd-private-90f54554da784e52aeb890d207e41094-vmtoolsd.service-I8F1Yy

systemd-private-d5f08625d54e4ed3a0faa9b9fb944db5-vmtoolsd.service-4rHPpX

systemd-private-f68c251a6a6c46ac94b4c1e73090ef59-vmtoolsd.service-S6J6U0

systemd-private-f7cb736915b24ef2b72faee1ec860c6d-vmtoolsd.service-ldpfcl

yum.log

假如复制目录:

[root@localhost ~]# ls

anaconda-ks.cfg

[root@localhost ~]# mkdir -p 书籍2/java编程思想

[root@localhost ~]# ls

anaconda-ks.cfg  书籍2

[root@localhost ~]# cp 书籍2/ /tmp/

cp: 略过目录"书籍2/"

我们需要加 -r

[root@localhost ~]# cp -r 书籍2/ /tmp/

[root@localhost ~]# ls /tmp/

abc

anaconda-ks.cfg

ks-script-p0Ci4J

systemd-private-12ece3aaa1eb44678dbf684dbccbc32f-vmtoolsd.service-xjTV7r

systemd-private-3588b18d27f94b80849d22621ef2defb-vmtoolsd.service-wmk7Jt

systemd-private-90f54554da784e52aeb890d207e41094-vmtoolsd.service-I8F1Yy

systemd-private-d5f08625d54e4ed3a0faa9b9fb944db5-vmtoolsd.service-4rHPpX

systemd-private-f68c251a6a6c46ac94b4c1e73090ef59-vmtoolsd.service-S6J6U0

systemd-private-f7cb736915b24ef2b72faee1ec860c6d-vmtoolsd.service-ldpfcl

yum.log

书籍2

这里我们用 ls -l  或者缩写命令 ll 来看下 文件的详细信息:

时间不一样;第二个是复制文件的当前时间;

假如我们需要把目录或者文件的属性一起复制 我们加 -a命名;

剪切或改名命令:mv  (move)

mv [原文件或目录] [目标目录]

我们把 root下的 书籍2 剪切到 tmp 下 并且重命名

[root@localhost ~]# ls

anaconda-ks.cfg  书籍2

[root@localhost ~]# mv 书籍2 /tmp/书籍2哈哈

[root@localhost ~]# ls

anaconda-ks.cfg

[root@localhost ~]# ls /tmp/

abc

anaconda-ks.cfg

ks-script-p0Ci4J

systemd-private-12ece3aaa1eb44678dbf684dbccbc32f-vmtoolsd.service-xjTV7r

systemd-private-3588b18d27f94b80849d22621ef2defb-vmtoolsd.service-wmk7Jt

systemd-private-90f54554da784e52aeb890d207e41094-vmtoolsd.service-I8F1Yy

systemd-private-d5f08625d54e4ed3a0faa9b9fb944db5-vmtoolsd.service-4rHPpX

systemd-private-f68c251a6a6c46ac94b4c1e73090ef59-vmtoolsd.service-S6J6U0

systemd-private-f7cb736915b24ef2b72faee1ec860c6d-vmtoolsd.service-ldpfcl

yum.log

书籍2

书籍2哈哈

假如在同一个目录 那就是重新命令操作了

[root@localhost ~]# ls

anaconda-ks.cfg

[root@localhost ~]# mkdir -p 书籍2/java.pdf

[root@localhost ~]# ls

anaconda-ks.cfg  书籍2

[root@localhost ~]# mv 书籍2/ 牛逼/

[root@localhost ~]# ls

anaconda-ks.cfg  牛逼

[root@localhost ~]# ls 牛逼/

java.pdf

[root@localhost ~]#

Centos之目录处理命令(七)的更多相关文章

  1. (五)Centos之目录处理命令

    一.目录处理命令 linux中 关于目录 有几个重要概念:一个是 / 根目录  还有一个当前用户的家目录 比如 root用户的家目录是 /root  ,普通用户的家目录是/home/xxx 下,如下图 ...

  2. Centos之目录处理命令

    linux中 关于目录 有几个重要概念 一个是 / 根目录  还有一个当前用户的家目录 比如 root用户的家目录是 /root  普通用户的家目录是/home/xxx 下 root登录 默认家目录 ...

  3. CentOS个人目录下中文路径转英文路径

    CentOS个人目录下中文路径转英文路径 如果安装了中文版到CentOS之后,root目录及home目录下会出现中文到路径名,如"桌面"."文档"," ...

  4. centos每天一句命令

    shutdown -h now 立刻关机  后面可以加上关键的时间  -r 重启 reboot 重启  同时记载以下,仅仅给刚刚接触的新手来说的  按两次tab 键会自动命令 cd 到目录下 su r ...

  5. Linux系列教程(四)——Linux文件和目录处理命令

    这个系列教程的前面我们讲解了如何安装Linux系统,以及学习Linux系统的一些方法.那么从这篇博客开始,我们就正式进入Linux命令的学习.学习命令,首先要跟大家纠正的一点就是,我们不需要记住每一条 ...

  6. Linux常用命令之文件和目录处理命令

    目录 1.Linux命令的普遍语法格式 2.目录处理命令 一.显示目录文件命令:ls 二.创建目录命令:mkdir 三.切换目录命令:cd 四.shell内置命令和外部命令的区别 五.显示当前目录命令 ...

  7. Linux系列教程(四)——Linux常用命令之文件和目录处理命令

    这个系列教程的前面我们讲解了如何安装Linux系统,以及学习Linux系统的一些方法.那么从这篇博客开始,我们就正式进入Linux命令的学习.学习命令,首先要跟大家纠正的一点就是,我们不需要记住每一条 ...

  8. Centos 6/7 常用命令总结 (基础)

    Centos 6/7 常用命令总结 (基础): 参考链接:https://www.cnblogs.com/linhaifeng/p/6045600.html 目录介绍: a) bin目录:用来存放常用 ...

  9. Linux学习笔记:linux命令之目录处理命令

    目录处理命令 ls 命令名称:ls 英文原意:list 执行权限:所有用户 功能:显示目录文件 语法:ls 选项[-ald] [文件或目录] -a:显示所有文件,包括隐藏文件 -l:详细信息显示 -d ...

随机推荐

  1. IE 页面不正常显示 错误脚本不报错 脚本调试相关

    在开发时,有时自己做的页面上的JS有错误,但是IE浏览器并不报错,这个时候有可能是因为脚本调试被禁止了. 在Internet选项的高级里面有 两个禁止脚本调试选项,把他们去掉就行.

  2. UVA 6475 Effective Infection Time

    You are estimating the threat level of quarantined zones that have been abandoned to the infection. ...

  3. Android Volley框架的几种post提交请求方式

    首先简单描述一下Google的Android开发团队在2013年推出的一个网络通信框架Volley.它的设计目标是进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如下载文件等,Vol ...

  4. c++opencv项目移植到Android(Mat—》IplImage*)

    近期将PC机上的行人检測的C++项目移植到Android平台遇到非常多的问题.因此,记录一些重点. 1. 最好能够參照Opencv sample 里面的mix-processing. 2. 数据结构的 ...

  5. Log4Net 最最最基本的应用。作为个人记录

    本文只记录了将日志按照日期记录到文件中的方法. 注:1.如果将该方法封装在类库中,在引用类库的项目中添加配置文件. 2.如果程序为控制台程序.winfrom程序,需将配置文件存放在/bin/debug ...

  6. stm32 IDR寄存器软件仿真的BUG

    /* * 函数名:Key_GPIO_Config * 描述 :配置按键用到的I/O口 * 输入 :无 * 输出 :无 */ void Key_GPIO_Config(void) { GPIO_Init ...

  7. 一个页面弄懂 CSS 样式选择器

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  8. java-ApiValueDemo

    关于API相关正则表达式,各方法的使用 package com.example; import java.util.Arrays; import java.util.Scanner; /** * Ap ...

  9. Java 扫描包下所有类(包括jar包)

    package com.MyUtils.file; [java] view plain copy import java.io.File; import java.io.FileFilter; imp ...

  10. log4j日志写入数据库

    # log4j写入数据库 ### 前言-----------------------------log4j是写入日志到控制台和文件很常见,但是写入到数据库不多见.做性能测试写入到数据库,统计方便些. ...