Centos目录及其常用处理命令
1、Centos之常见目录作用介绍[1]
我们先切换到系统根目录 / 看看根目录下有哪些目录
[root@localhost ~]# cd /
[root@localhost /]# ls
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
[root@localhost /]#
这里首先看下 根目录/ 下的 bin 和 sbin;
在user下也有bin和sbin
[root@localhost /]# ls usr/
bin games lib libexec sbin src
etc include lib64 local share tmp
[root@localhost /]#
根目录下的bin和sbin,usr目录下的bin和sbin,
这四个目录都是用来保存系统命令的。
bin:
bin为binary的简写主要放置一些系统的必备执行档例如:cat、cp、chmod df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。
/usr/bin:
主 要放置一些应用软体工具的必备执行档例如c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*、 gzip、htpasswd、kfm、ktop、last、less、locale、m4、make、man、mcopy、ncftp、 newaliases、nslookup passwd、quota、smb*、wget等。
/sbin:
主 要放置一些系统管理的必备程式例如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、 ifdown、init、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、 runlevel、shutdown等。
/usr/sbin:
放置一些网路管理的必备程式例如:dhcpd、httpd、imap、in.*d、inetd、lpd、named、netconfig、nmbd、samba、sendmail、squid、swap、tcpd、tcpdump等
bin目录下的命令普通用户和root用户都可以执行,
但是sbin下的命令只有root用户可以执行;
/boot目录,是启动目录,存的是启动相关的文件
该目录下不要乱存东西;
/dev设备文件保存目录
/etc配置文件保存目录
/home普通用户的家目录
/lib系统库保存目录
/mnt系统挂载目录
/media挂载目录
/root超级用户的家目录
/tmp临时目录
/proc直接写入内存的,虚拟文件系统
/sys直接写入内存的,虚拟文件系统
/var系统相关文档内容
2、Centos中查询目录中内容命名ls[2]
首先解释下这块, root代表当前登录用户,localhost代表主机名, ~代表当前主机目录,#代表用户权限 #表示超级用户,$表示普通用户;
查询目录中内容命令 ls (list缩写)
格式 ls [选项] [文件或目录]
选项:
-a 显示所有文件,包括隐藏文件
-l 显示详细信息
-d 查看目录属性
-h 人性化显示文件大小
-i 显示inode
超级用户root默认的当前目录是 root目录
我们可以用pwd命名(Print Working Directory 打印当前工作目录)看到
我们打印下当前目录下文件信息:
[root@localhost ~]# ls
anaconda-ks.cfg
只有一个文件
假如我们要列出所有文件 用 ls -a 把隐藏文件也显示出来
[root@localhost ~]# ls -a
. anaconda-ks.cfg .bash_logout .bashrc .tcshrc
.. .bash_history .bash_profile .cshrc
多了一些文件
我们也可以看其他目录的文件:
[root@localhost ~]# ls /etc/
adjtime modprobe.d
aliases modules-load.d
aliases.db motd
alternatives mtab
anacrontab my.cnf
asound.conf my.cnf.d
audisp NetworkManager
audit networks
同样也可以看具体某个文件
[root@localhost ~]# ls -l /etc/vconsole.conf
-rw-r--r--. 1 root root 37 6月 10 05:23 /etc/vconsole.conf
我们用 -l 或者 -la 组合 列出详细信息;
[root@localhost ~]# ls -l
总用量 4
-rw-------. 1 root root 1237 6月 10 05:24 anaconda-ks.cfg
[root@localhost ~]# ls -la
总用量 24
dr-xr-x---. 2 root root 135 6月 11 21:13 .
dr-xr-xr-x. 17 root root 224 6月 10 05:23 ..
-rw-------. 1 root root 1237 6月 10 05:24 anaconda-ks.cfg
-rw-------. 1 root root 0 6月 11 21:13 .bash_history
-rw-r--r--. 1 root root 18 12月 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 12月 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 12月 29 2013 .bashrc
-rw-r--r--. 1 root root 100 12月 29 2013 .cshrc
-rw-r--r--. 1 root root 129 12月 29 2013 .tcshrc
[root@localhost ~]#
这里第一列 比如 dr-xr-xr-x. 代表文件类型以及所有者,所属组以及其他者权限
第一位d代表文件类型 常见的有 - 文件 d目录 | 软件链接文件
后面9位 每3位一个组 分别是 所有者u 所属组g 以及 其他者o的权限
权限分三种 r读 w写 x执行
比如 dr-xr-xr-x 这个目录 所有者 所属组 以及其他者 都有 读和执行权限;
比如 -rw------- 这个文件 所有者有读写权限 所属组以及其他者没有权限;
第二列 那个数字 是 硬链接次数 后面再说;
第三列 root 是 所有者;
第四列 root 是 所属组;
第五列 是文件大小;假如看不惯 可用 ls -lh
[root@localhost ~]# ls -lh
总用量 4.0K
-rw-------. 1 root root 1.3K 6月 10 05:24 anaconda-ks.cfg
第六列的日期是该文件最后一次修改时间;
最后一列 是文件名称;
查看目录属性 要加 -d
[root@localhost ~]# ls -ld /etc/
drwxr-xr-x. 78 root root 8192 6月 13 15:50 /etc/
[root@localhost ~]#
查看文件的inode属性 类似 主键 唯一识别文件的Id 用 -i
[root@localhost ~]# ls -li
总用量 4
33574979 -rw-------. 1 root root 1237 6月 10 05:24 anaconda-ks.cfg
[root@localhost ~]#
33574979 就是inode属性
3、Centos之目录处理命令[3]
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 ~]#
原文出处:
[1] Java1234_小锋, Centos之常见目录作用介绍, http://blog.java1234.com/blog/articles/296.html
[2] Java1234_小锋, Centos中查询目录中内容命名ls, http://blog.java1234.com/blog/articles/294.html
[3] Java1234_小锋, Centos之目录处理命令, http://blog.java1234.com/blog/articles/295.html
Centos目录及其常用处理命令的更多相关文章
- centos 目录结构 快捷键 ls命令,alias别名,so:动态库 a:静态库,环境变量PATH,Ctrl+z 暂停命令,Ctrl+a 光标到行首,Ctrl+e 光标到行尾,Ctrl+u 删除光标前所有字符 Ctrl+r 搜索命 hash命令 Ctrl+左箭头/右箭头 cd命令 第三节课
centos 目录结构 快捷键 ls命令,alias别名,so:动态库 a:静态库,环境变量PATH,Ctrl+z 暂停命令,Ctrl+a 光标到行首,Ctrl+e 光标到行尾,Ctrl+u 删除光标 ...
- Linux文件和目录管理常用重要命令
一.目录与路径 1.相对路径与绝对路径 因为我们在Linux系统中,常常要涉及到目录的切换,所以我们必须要了解 "路径" 以及 "相对路径" 与 "绝 ...
- Linux Centos 上一些常用的命令
1.查看端口被哪个进程占用 netstat -lnp | grep <端口号> 2.查看某个进程号详细信息 ps <进程号> 3.检查指定服务是否开启(例如 telnet) c ...
- linux 常用查看命令
linux 常用查看命令 目录 linux 常用查看命令 linux 查看内存/进程-ps/top linux 查看磁盘存储-df linux 查看io读写-iotop linux 查看端口占用-ne ...
- CentOS Linux最常用命令及快捷键整理
最近一直在对CentOS系统进行各种体验,为方便自己也方便他人,整理了Linux常用命令及快捷键,不过其实大多和DOS是一样的,只是命令的表达上可能有点儿不一样. 常用Linux命令: 文件和目录: ...
- Linux CentOS 知识和常用命令
1.常用热键 [Tab]它具有“命令补全”与“文件补全”的功能[Ctrl+C]中断执行中的程序组合键[Ctrl+d]键盘输入结束.也可以用来替代 exit 2.Linux 常用编辑器 vi 和 vim ...
- CentOS常用基础命令大全
这篇文章主要介绍了CentOS常用基础命令大全,学习centos的朋友需要掌握的知识,需要的朋友可以参考下 1.关机 (系统的关机.重启以及登出 ) 的命令shutdown -h now 关闭系统(1 ...
- Centos 6/7 常用命令总结 (基础)
Centos 6/7 常用命令总结 (基础): 参考链接:https://www.cnblogs.com/linhaifeng/p/6045600.html 目录介绍: a) bin目录:用来存放常用 ...
- Linux命令整理,用户管理,用户组管理,系统管理,目录管理常用命令
知识点梳理 Linux课堂笔记 学习目标 能够知道什么是Linux系统以及它的应用场景 能够独立完成安装VMware虚拟机和网络配置 能够独立完成安装CentOS以及远程终端SecureCRT 能够熟 ...
随机推荐
- 在ASP.NET Core中添加的Cookie如果含有特殊字符,会被自动转义
我们知道在Cookie中有些字符是特殊字符,这些字符是不能出现在Cookie的键值中的. 比如"="是Cookie中用来分隔键和值的特殊字符,例如:Key01=Value01,表示 ...
- Math基础使用
/* java.lang.Math类是数学相关的工具类,里面提供的大量静态方法,完成与数学运算的操作 public static double abs(double num):获取绝对值. publi ...
- 从零开始一步一步搭建Ubuntu Server服务器、修改数据源、安装Docker、配置镜像加速器、Compose部署Gitlab服务
场景 最终目的是使用Docker Compose部署一个Gitlab服务. 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序 ...
- TinyMCE常用插件
Advanced Tables 基于table插件的增强表格插件,添加了排序功能. tinymce.init({ plugins: 'table advtable', menubar: 'table' ...
- javaEE复习重点个人总结
最近在学院或集队的群里看见最多的就是求javaEE大作业了,那么突然有感而发,写点参考性的期末复习总结. 第一章JavaEE 概述: 1:两层体系应用体系结构 安全性低,部署困难,消耗系统资源 2 三 ...
- C++ OpenSSL 之五:生成P12文件
1.等同于使用: openssl pkcs12 -export -inkey "key_path" -in "pem_path" -out "save ...
- Python基础(一)--变量、注释、文件头
一.变量 1.什么是变量 变量是变化的量,用来保存程序执行的状态以及状态的变化 2.变量定义规范 #1. 变量名只能是:字母.数字或下划线的任意组合 #2. 变量名的第一个字符不能是数字 #3. 关键 ...
- 第一部分day2-for、while、数据类型(字符串、列表、元组)
数据类型 数据类型的初识 1.数字 整数 int (integer) 整型 (注:python3 不区分整型和长整型,统一称之为整型) 长整型 float(浮点型) complex(复数) 是由实数和 ...
- ubuntu安装vbox虚拟机
ubuntu安装vbox虚拟机 一.安装准备 1.查看主机配置 二.下载安装包 (建议将安装包下载并保存) a.下载virtualbox安装包 下载链接https://www.virtualbo ...
- 任意精度计算器 bc (arbitrary precision calculator)
2019/06/18 bc 学习之 https://www.runoob.com/linux/linux-comm-bc.html