linux学习之六Linux文件与目录管理(一)

2010年11月18日 Linux基础 暂无评论 阅读 7,733 views 次

内容简介

1. 目录与路径
2. 文件与目录管理
3. 文件内容查看
4. 文件与目录的默认权限与隐藏权限
5. 命令与文件的查找

1. 目录与路径
相对路径:一般常用在文件名长的目录切换中
绝对路径:一般用在SHELL脚本中

. 代表当前目录
.. 代表上一层目录
- 代表前一个工作目录
~ 代表『目前用户身份』所在的家目录
~user 代表user这个用户的家目录(user是个账号名称)

几个常见的处理目录的命令:
cd:变换目录
pwd:显示当前目录
mkdir:建立一个新的目录
rmdir:删除一个空的目录

cd=Change Directory
cd ~test
cd ~
cd
cd ..
cd -
cd 绝对与相对路径

pwd=Print Working Directory
cd /var/mail
pwd
pwd -P

mkdir=make directory
mkdir test
mkdir test/test1/test2
mkdir -p
mkdir -m

rmdir=remove directory
mkdir test
mkdir test/test1
rmdir test?
touch test/test2
rmdir -p

为什么我们在任何目录都能执行某些命令呢?这里就有一个变量$PATH的原因
ehco $PATH
不同的用户有不同的环境变量

2. 文件与目录管理
查询文件与目录的一些信息
ls=list
-a
-l
-d
-h

复制、删除与移动
cp=copy
-r:递归复制,一般用于目录的复制
-f:强制
-p:属性一起复制过去,而不是用默认的属性
-d:复制链接文件的属性
-i:进行确认(默认)
-a=pdr(备份常用)
-u:当源文件较新的时候,才进行复制

一般情况下,我们CP文件的时候,一定要有个读权限才可以复制,复制后,权限都会变成现在用户的默认权限。
文件是644 
文件夹是755  

rm=remove删除文件
-f
-i
-r
删除一个带-开头的文件要加上相应的目录./ 也可以多加一个“-”来解决

mv=move移动文件、目录或更名
-f
-i
-u

3. 文件内容查看
cat 由第一行开始显示文件内容
tac 从最后一行开始显示,tac是cat倒着写
nl 显示出行号
more 一页一页显示文件内容
less 与more类似,但是比 more更好的是,他可以向前翻页!
head 只看头几行
tail 只看尾几行
od 以二进制的方式读取文件内容

cat=concatenate
-b:针对非空白行
-n:全部行

tac

nl

more (一页一页翻动)
空格键 (space):代表向下翻一页;
Enter :代表向下翻『一行』;
/字符串 :代表在这个显示的内容中,向下搜寻『字符串』这个关键词;
:f :立刻显示出文件名以及目前显示的行数;
q :代表立刻离开more,不再显示该档案内容。
b 或 [ctrl]+b :代表向上翻页。

less (一页一页翻动)
空格键 :向下翻一页;
[pagedown]:向下翻一页;
[pageup] :向上翻一页;
/字符串 :向下搜寻『字符串』;
?字符串 :向上搜寻『字符串』;
n :重复前一个搜寻 ;
N :反向重复前一个搜寻 ;

head (读取出前面几行)
-n:后面接数字,代表显示几行的意思
如果后面的数字是一个负数,表示文件后面的这个行数不显示,其它的全显示。也就是说从头显示到后n行之前


head -n 10 file=head -n +10 file
显示的是前10行的内容
head -n -10 file
从头显示到倒数第十行为止

tail (读取出后面几行)
-n :后面接数字,代表显示后几行的意思
-f :表示连续侦测后面所增加的内容,要等到按下[ctrl]-c才会结束tail的侦测
这个一般用在观察系统日志的时候用到


tail -n 10 file=tail -n -10 file
显示的是后10的内容
tail -n +10 file
显示的是从第10行开始显示到最后

od查阅非纯文文件的内容
-t 后面可以接各种『类型 (TYPE)』的输出。
    a :利用默认的字符输出;
    c :使用 ASCII 字符输出
    d[size] :利用十进制(decimal)输出数据;
    f[size] :利用浮点数(floating)输出数据;
    o[size] :利用八进制(octal)输出数据;
    x[size] :利用十六进制(hexadecimal)输出数据;
虽然对于一般使用者来说,这个命令的用处可能不大,但是对于工程师来说, 这个指令可以将 binary file 的内容作一个大致的输出,他们可以看得出东西是什么。

查看文件类型命令file
file ~/.bashrc
file /var/lib/mlocate/mlocate.db
file /usr/bin/passwd

touch
文件的时间有三种记录方式
modification time (mtime):在写入文件时随文件内容的更改而更改的时间=ls -l
status time (ctime):是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改的时间=ls -l --time=ctime
access time (atime):读取文件或者执行文件时更改的时间=ls -l --time=ctime

ls -l install.log; ll --time=ctime install.log; ll --time=atime install.log

-a :仅修改 access time;
-c :仅修改文件的时间,若该文件不存在则不建立新的文件;
-d :后面可以接欲修改的日期而不用目前的日期,也可以使用 --date="日期或时间"
-m :仅修改 mtime ;
-t :后面可以接想修改是时间而不用目前的时间,格式为[YYMMDDhhmm]

后续……

给我留言

Copyright © 羽飞博客 保留所有权利.   Ality主题 皖ICP备14013844号-1

用户登录