Linux基础知识2

Linux文件种类与扩展名

  1. 文件种类
    • 普通文件: 一般进行访问类型的文件,第一个字符为[-]
    • 纯文本文件(ASCII):内容属于可以直接读到的数据,可以执行cat命令(将一个文件内容读出来)
    • 二进制文件(binary):系统认识且可执行的文件
    • 数据格式文件(data):特定格式的文件,可用last读取
    • 目录(directory):第一个属性为[d]
    • 连接文件(link):类似Windows系统下的快捷方式,第一个属性为[l]
    • 设备与设备文件(device):
      • 与系统外设及存储等相关的一些文件,通常都集中在/dev目录,分为两种:
      • 块(block)设备文件:一些存储数据,提供系统随机访问的接口设备,例如:硬盘,软盘,可以随机在硬盘的不同块读写,第一个属性为[d]
      • 字符(character)设备文件:一些串行端口的接口设备,例如:键盘,鼠标等,特征是一次性读取,第一属性为[c]
      • 套接字(sockets):数据接口文件,通常被用在网络上的数据连接。第一属性为[s],通常在/var/run
      • 管道(FIFO, pipe):FIFO是一种特殊文件,主要目的在解决多个程序同时访问一个文件所造成的错误问题,第一属性[p]
  2. Linux文件扩展名
    • *.sh: 脚本或批处理文件(scripts),因为批处理文件为使用Shell写成的,所以扩展名就编写成.sh
    • *Z、*.tar、*.tar.gz、*.zip、*.tgz: 压缩文件
    • *.html、*.php:网页相关文件
  3. Linux文件长度限制
    • 单一文件或目录的最大容许文件名为255个字符
    • 包含完整路径名称及目录(/)的完整文件名为4096个字符

Linux目录配置标准

可分享的(shareable) 不可分享的(unshareable)
不变的(static) /usr(软件放置处) /etc(配置文件)
/opt(第三方软件) /boot(开机与内核文件)
可变动的(variable) /var/mail(用户邮件信箱) /var/run(程序相关)
/var/spool/news(新闻组) /var/lock(程序相关)
  1. 可分享的:可以分享给其他系统挂载使用的目录
  2. 不可分享的:自己机器上面运行的设备文件或者是与程序有关的socket文件等
  3. 不变的:有些数据是不会经常变动的,例如:函数库,文件说明文件,系统管理员所管理的主机服务配置文件
  4. 可变动的:经常改变的数据,例如登陆文件,新闻组等
  • /(root,根目录): 与开机系统有关

    目录 应放置文件内容
    /bin 单用户维护模式下还能够被操作的命令,可以被root与一般账户使用,主要有cat,chmod,chown,date,mv,mkdir,cp,bash等常用命令
    /boot 放置开机会使用的文件,包括Linux内核文件以及开机菜单与开机所需配置文件
    /dev 任何设备与接口设备都是以文件的形式存在于这个目录当中,比较重要的文件有/dev/null, /dev/zero, /dev/tty, /dev/lp*, /dev/hd*, /dev/sd*等
    /etc 系统主要配置文件目录,比较重要文件有/etc/inittab, /etc/init.d, /etc/modprobe.conf, /etc/X11, /etc/fstab, /etc/sysconfig等,重要目录有: /etc/init.d/:所有服务的默认启动脚本;/etc/xinetd.d/:所谓的super daemon管理的各项服务的配置文件目录; /etc/X11:与X Windows有关的各种配置文件
    /home 系统默认的用户主文件夹
    /lib 开机时会用到的函数库 以及在/bin或/sbin下面的命令会调用的函数库
    /media 放置可删除设备
    /mnt 暂时挂载某些额外设备
    /opt 第三方软件安置目录
    /root 系统管理员的主文件夹
    /sbin 开机过程所需要的命令,某些服务器软件程序,放置在/usr/sbin,本机自行安装的软件所产生的系统执行文件 放置在/usr/local/sbin
    /srv 一些网络服务启动之后,服务所需要取用的数据目录
    /tmp 一般用户或者是正在执行的程序暂时放置文件的目录

​ /etc:配置文件

​ /bin:重要执行文件

​ /dev:所需要的设备文件

​ /lib:执行文件所需的函数库与内核所需的模块

​ /sbin:重要的系统执行文件

以上目录都不可与/根目录分开

  • /usr:与软件安装/执行有关

    目 录 应放置文件内容
    /usr/X11R6/ X window系统重要数据放置的目录
    /usr/bin/ 绝大部分用户可以使用的命令目录
    /usr/lib/ 包含各应用软件的函数库,目标文件,以及不被一般用户惯用的执行文件或脚本。
    /usr/local/ 系统管理员在本机自行安装的软件
    /usr/sbin 非系统正常运行所需要的系统命令
    /usr/share/ 放置共享文件,常见子目录/usr/share/man,/usr/share/doc,/usr/share/zoneinfo
    /usr/src/ 一般源码
  • /var:与系统运作过程有关

目录 应放置文件内容
/var/chache/ 应用程序本身运行过程中会产生的一些暂存文件
/var/lib/ 程序本身执行中使用到的数据文件
/var/lock 设备锁
/var/log 登陆文件放置的目录,重要文件如/var/log/messages, /var/log/wtmp
/var/mail/ 放置个人电子邮件信箱目录
/var/run/ 某些程序或者是服务启动后,PID放置目录
/var/spool/ 放置一些队列数据

cd 切换目录

cd [相对路径或绝对路径]

pwd 提示目前所在的目录

pwd [-P]
参数:
-P: 显示出当前的路径,而非使用连接(link)路径

mkdir 新建新目录

mkdir [-mp] 目录名称
参数:
-m: 配置文件案的权限,直接设置,不需要看默认权限
-p: 帮助你直接将所需要的目录(包含上层目录)递归创建起来

rmdir 删除“空”的目录

rmdir [-p] 目录名称
参数:
-p: 连同上层"空的"目录也一起删除

ls 查看文件与目录

ls [-aAdfFhilnrRSt] 目录名称
ls [--color={never,auto,always}] 目录名称
ls [--full-time] 目录名称
参数:
-a: 全部的文件,连同隐藏文件,一起列出
-A: 列出全部的文件(连同隐藏文件,但不包括.与..这两个目录)
-d: 仅列出目录本身,而不是列出目录内的文件数据
-f: 直接列出结果,而不是进行排序
-F: 根据文件、目录等信息给予附加数据结构,例如: *:代表可执行文件/:代表目录=:代表socket文件|:代表FIFO文件
-h: 将文件容量以人类较易读的方式列出来
-i: 列出inode号码
-l: 列出长数据串,包含文件的属性与权限等数据
-n: 列出UID与GID,而非用户与用户组的名称
-r: 将排序结果反向输出
-R: 连同子目录内容一起列出来,等于该目录下的所有文件都会显示出来
-S: 以文件容量大小排序,而不是用文件名
-t: 依时间排序,而不是用文件名
--color=never: 不要依据文件特性给予颜色显示
--color=always: 显示颜色
--color=auto: 让系统自行依据设置来判断是否给予颜色
--full-time: 以完整时间模式(包含年、月、日、时、分)输出
--time=(atime, ctime): 输出访问时间或改变权限属性时间(ctime),而非内容更改时间

cp 复制文件或目录

cp [-adfilprsu] 源文件 目标文件
cp [options] source1 source2 source3....directory
参数:
-a: 相当于-pdr的意思
-d: 若源文件为连接文件的属性(link file),则复制连接文件属性而非文件本身。
-f: 为强制(force)的意思,若目标文件已经存在且无法开启,则删除后再尝试一次
-i: 若目标文件(destination)已经存在时,在覆盖时会先询问操作的进行
-l: 若进行硬连接(hard link)的连接文件创建,而非复制文件本身。
-p: 连同文件的属性一起复制过去,而非使用默认属性
-r: 递归持续复制,用于目录的复制行为
-s: 复制成为符号链接文件,即”快捷方式“文件
-u: 若目标文件比源文件旧才更新目标文件
注: 若源文件有两个以上,则目标文件为目录

rm 移除文件或目录

rm [-fir] 文件或目录
参数:
-f: 就是force的意思,忽略不存在的文件,不会出现警告信息;
-i: 互动模式,在删除前会询问用户是否操作;
-r: 递归删除,最常用在目录的删除了,非常危险的参数

mv 移动文件与目录,或更名

mv [-fiu] source destination
mv [options] source1 source2 source3....directory
参数:
-f: force强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i: 若目标文件(destination)已经存在时,就会询问是否覆盖
-u: 若目标文件已经存在,且source比较新,才会更新(update)
mv bashrc mvtest
mv mvtest mvtest2

cat: 由第一行开始显示文件内容

cat [-AbEnTv]
参数:
-A: 相当于-vET的整合参数,可列出一些特殊字符,而不是空白而已
-b: 列出行号,仅针对非空白行做行号显示,空白行不标行号
-E: 将结尾的断行字符$显示出来
-n: 打印出行号,连同空白行也会有行号,与-b的参数不用
-T: 将[Tab]按键以^I显示出来
-v: 列出一些看不出的特殊字符
cat /etc/issue

tac: 从最后一行开始显示

nl: 显示的时候,顺便输出行号

nl [-bnw] 文件
参数:
-b: 指定行号指定的方式,主要有两种:
    -b a: 表示不论是否为空行,,也同样列出行号(类似cat -n)
    -b t: 如果有空行,空的那一行不要列出行号(默认值)
-n: 列出行号表示的方法,主要有三种:
    -n ln: 行号在屏幕的最左方显示
    -n rn: 行号在自己字段的最右方显示,且不加0
    -n rz: 行号在自己字段的最右方显示,且加0
-w: 行号字段占用的位数

more: 一页一页地显示文件内容

more /etc/man.config
空格键: 代表向下翻一页
回车键: 代表向下滚动一行
/字符串: 代表在这个显示的内容当中,向下查询"字符串"这个关键字
:f : 立刻显示出文件名以及目前显示的行数
q: 代表立刻离开more,不再显示该文件内容
b或 ctrl+b: 代表往回翻页,不过这个操作只对文件有用,对管道无用

less: 与more类似,但是比more更好的是,它可以往前翻页

less /etc/man.config
空格键: 代表向下翻动一页
[PageDown]: 向下翻动一页
[PageUp]: 向上翻动一页
/字符串: 向下查询"字符串"的功能
?字符串: 向上查询"字符串"的功能
n: 重复前一个查询
N: 反向重复前一个查询
q: 离开less这个程序

head: 只看头几行

head [-n number] 文件
参数:
-n: 后面接数字,代表显示几行的意思

tail: 只看结尾几行

tail [-n number] 文件
参数:
-n: 后面接数字,代表显示几行
-f: 表示持续检测后面所接的文件名,等到按下ctrl-c 才会结束

od: 以二进制的方式读取文件内容

od [-t TYPE] 文件
参数:
-t: 后面可以接各种"类型"的输出,例如:
    a: 利用默认的字符来输出
    c: 使用ASCII字符来输出
    d[size]:利用十进制来输出数据,每个整数占用 size bytes
    f[size]:利用浮点数来输出数据,每个整数占用 size bytes
    o[size]:利用八进制来输出数据,每个整数占用 size bytes
    x[size]:利用十六进制来输出数据,每个整数占用 size bytes

touch 修改文件时间或创建新文件

文件主要三个变动时间:

  • modification time(mtime): 文件内容更改时间
  • status time(ctime): 文件状态更改时间
  • access time(atime): 文件读取时间

默认显示mtime

touch [-acdmt] 文件
参数;
-a: 仅修改访问时间
-c: 仅修改文件的时间,若该文件不存在则不创建新文件
-d: 后面可以接欲修改的日期而不用目前的日期,也可以用--data=日期或时间
-m: 仅修改mtime(文件内容更改时间)
-t: 后面可以接欲修改的时间而不是目前时间,格式为[YYMMDDhhmm]

umask 文件默认权限

目前用户在新建文件或目录时的权限默认值,umask的分数指 该默认值需要剪掉的权限,修改默认权限值,umask 数字

chattr,lsattr 文件隐藏属性

chattr [+-=][ASacdistu] 文件或目录名称
参数:
+: 增加某一个特殊参数,其他原本存在的参数不变
-: 删除某一个特殊参数,其他原本存在的参数不变
=: 仅有后面接的参数
A: 访问此文件或目录时,atime时间不会被更改
S: 进行文件修改时同步写入磁盘
a: 文件只能增加数据,不能删除和修改数据,只有root才能设置这个属性
c: 自动压缩文件,读取时自动解压
d: 当dump程序被执行时,设置d属性可以使该文件(目录)不会被dump备份
i: 文件无法删除,改名,设置连接也无法写入或添加数据,只有root能设置
s: 文件将永远从硬盘空间删除
u: 文件删除时存储在硬盘,可找回
注: 属性设置常见是a与i
lsattr [-adR] 文件或目录
参数:
-a: 将隐藏文件的属性也显示出来
-d: 如果是目录,仅列出目录本身的属性而非目录内的文件名
-R: 连同子目录的数据一并列出

file 查看文件类型

which 寻找执行文件

which [-a] command
参数:
-a: 将所有由PATH目录中可以找到的命令均列出

whereis 寻找特定文件

whereis [-bmsu] 文件或目录名
参数:
-b: 只找二进制格式的文件
-m: 只找在说明文件manual路径下的文件
-s: 只找source源文件
-u: 查找不在上诉三个选项当中的其他特殊文件

locate:依据/var/lib/mlocate内数据库记载,找出用户输入的关键字文件

updatedb: 更新/var/lib/mlocate内的数据库文件

**find 查找文件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 156,265评论 4 359
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,274评论 1 288
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,087评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,479评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,782评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,218评论 1 207
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,594评论 2 309
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,316评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,955评论 1 237
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,274评论 2 240
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,803评论 1 255
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,177评论 2 250
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,732评论 3 229
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,953评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,687评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,263评论 2 267
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,189评论 2 258

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 98,434评论 9 468
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,007评论 2 34
  • Linux系统一般有4个主要部分: 内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本...
    偷风筝的人_阅读 3,174评论 1 17
  • 没有阳光,就没有日子的温暖;没有雨露,就没有五谷丰登;没有水源,就没有生命;没有父母,就没有我们自己。 ...
    钱子杰妈妈阅读 202评论 0 0
  • 最近看了一个电影,双程,很多人应该不太知道这部电影吧,因为它是本耽美小说改编的。 刚开始看这部电影是室友推荐,但是...
    梁瑾L阅读 1,022评论 0 2