Linux文件属性(ll)
- -rwxr-x-wx 1 root root 890 Nov 7 22:41 config
- -rwxr-x-wx:文件访问权限
- 1:文件个数。如果是目录,它表示该目录下的文件个数,如果是文件,那数目为1
- root:文件拥有者
- root:文件所属的组
- 890:文件的大小(byte)
- Nov 7 22:41:文件创建时间
- config:文件名
- -rwxr-x-wx
- -:文件类型(1位)
- rwx:文件拥有者权限(3位)
- r-x:文件所属用户组权限
- -wx:其他用户访问权限
‘-’:普通文件;r:可读;w:可写;x:可执行
Linux常用七组命令
第1组 导航命令
- 查看当前目录所有内容ls
- 命令格式:$ ls [选项]
- 示例:ls -al /home
- 切换工作路径
- 命令格式:$ cd 工作路径
- cd …
- cd -r /home/dir 1 /tmp/
- 查看当前所在路径
- 命令格式
- 示例:$ pwd
- 打印当前所在路径,告诉用户当前所在位置。
第二组 目录操作命令
- 删除空目录
- 命令格式:$ mkdir dir1 dir2
- 删除目录或文件
- 命令格式:$ rm -r /home/dir
第三组 文件操作命令
- 创建空文件
- 命令格式:$ touch file
- 文件大小为0
- 创建有内容的文件
- $ echo 内容 或者 “内容” //输出到标准输出
- $ echo 内容 或者 “内容” >文件 //重定向到文件,如果文件不存在则创建新文件
- “>”表示输出到新文件;“>>”表示输出到现有文件末尾(不覆盖原有内容)
- 示例:
- echo I’m Dongxue > a
- echo I’m Dongxue >> a
- 查看文件类型
- file 文件
- 示例:file hello
只能查看可读属性的文件,支持通配符“*”,一次性查看当前目录下所有文件类型
- 查看文件内容
- 文本文件、C代码文件、shell脚本等ASCII码文件用Linux的命令可以查看
- (1) more/less指令查看
- 指示格式:$ more/less文件
- 键盘q退出
- (2) head/tail命令查看
- 默认显示10行
- 指示格式:$ head/tail [选项][参数]文件
- 示例:
- $ head/tail -n 20 install.cf
- $ head/tail -c 200 install.cf
- $ head/tail -c 1b install.cf
- (3) cat 命令查看
- 把一个或多个文件输出到标准设备上
- 指令格式:$ cat 文件
- 文件合并
- 利用cat,将标准输出重定向到某个文件,形成合并文件。
- 格式:$ cat[选项]文件1 文件2… [>文件3]
- 示例:$ cat -n hello.c Markfile > test
- 文件压缩/解压
- .gz<-> gzip命令压缩的文件
- .bz2<-> bzip命令压缩的文件
- .tar<-> tar命令打包的文件
- .tar.gz<-> tar命令打包后,再经过gzip压缩的文件
- .tar.bz2<-> tar命令打包后,再经过bzip2压缩的文件
不同后缀名的文件需要使用不同的命令处理。
- 命令格式:$tar [选项] 文件
- 示例:
- (1)解压 a.tar.bz2 文件,并显示详细信息:
$ tar -xjvf a.tar.bz2
- (2)解压b.tar.gz 文件,指定解压到home/wdx/目录
$ tar -xzvf b.tar.gz -C /home/wdx
- (3)将drivers目录的文件打包,创建一个.tar.bz2压缩文件:
$tar -cjvf drivers.tar.bz2 drivers
- 文件改名和移动
- 格式:$ mv 源文件/目录/ 目的文件/目录
- 示例:$ mv /home/test /home/test1
如果目的路径和源文件路径不同,进行移动操作;如果相同,进行改名操作。
- 文件复制
- 格式:$ cp [选项]源文件/目录 目的文件/目录
- 示例:$ cp -r /home/dir1 /tmp/
- 创建连接
- 软(符号)连接和硬连接
- 格式:$ ln [选项]源文件/目录 连接名
- 示例:
$ ln oldfile hlink //为oldkpfile文件创建一个硬连接
$ ln -s oldfile slink //为oldkpfile文件创建一个符号连接
- 改变文件和目录权限
- 格式:$ chmod [参数] 文件/目录
- 参数who:
u 表示文件的所有者
g 表示与文件所有者同组的用户
o 表示“其它用户”
a 表示“所有用户”,它是系统默认值
- 参数mode:
+添加某个权限
-取消某个权限
=赋予给定权限
- 示例:chmod g+w hello.c //同组用户增加可执行权限
第四组 网络操作指令
- 网路配置
- 指令格式:ip /ipconfig 网路接口 [选项] 地址/参数mode:
- 注意:
(1)可能需要root权限;
(2)不需要重启系统,但不能复位保存;
(3)可同时配置多个参数
- 示例:# sudo ipconfig eh1 192.168.1.136 netmask 255.255.255.0 broadcast 192.168.1.255 up
- ping 命令
- 格式:$ ping 地址
- 示例:$ ping 192.168.1.5
第五组 安装和卸载文件系统
- 文件系统挂载
- 指令格式:# mount[参数][设备名][挂载点]
- 挂载注意事项:
(1)挂载点必须是一个已经存在的目录;
(2)如果挂载点非空,则挂载之前的内容不可用,卸载后方可用;
(3)一个挂载点可被多个设备/文件重复挂载,后一次将覆盖前一次的内容;
(4)使用多个参数 -o参数的时候,-o只用一次,参数之间用半角逗号隔开。
- 示例:
#mount /dev/cdrom /mnt #挂载CDROM
#mount -t vfat /dev/sda1/mnt #挂载VFAT格式的U盘
#mount -t nfs 192.168.1.138:/home/chenxibing/lpc3250 /mnt -o nolok #挂载网络文件系统NFS
- 文件系统卸载
- 指令格式:# unmount 挂载点
- 示例:# unmount /mnt
卸载已经挂载到/mnt目录下的文件
第六组 使用内核模块和驱动
- 加载(插入)模块
- 指令格式:# insmod [选项]模块[符号名称=值]
- 示例:
往系统插入beepdrv.ko驱动模块:#insmod beepdrv.ko
带符号参数插入模块:# insmod pcm-8032a.ko irq=3 addr=0x300
- 查看已经加载的模块
- $ lsmod
实际上时列出/proc/modules的内容
- 卸载驱动模块
- 指令格式:# rmmod[选项]模块
- 示例:
卸载beepdrv.ko驱动,模块:#rmmod beepdrv.ko
- 自动处理可加载模块
一个模块依赖于个多模块时,自动解决模块间的依赖关系。
- 指令格式:# modprobe [选项] 模块[符号名称=值]
- 创建设备节点
- 用途:如果系统不能自动创建设备节点,需要为驱动创立对应的设备节点。
- 格式:#mkmod 设备名 设备类型 主设备号 次设备号
- 示例:创建LED设备:#mkmod/dev/led c 231 0
第七组 其它命令
- 临时获取root权限
- 命令格式:$ sudo vim root.ini
- 说明:
(1) sudo只能临时获取root一段时间(如5分钟),超过这段时间则需再次输入密码。
(2) su命令可以切换到root用户,但比较危险,不建议使用
- 文件同步
- 指令:sync
- 文件搜索
- $find 路径 -选项 其它
- $find arch/arm/ -name mux*.C
- 最常用的是根据文件名和查找
- 字符串搜索
- 指令格式:$ grep 选项 表达式 [文件]
- 示例:$ grep “pcf8563” - R arch/arm
- 管道操作
- 格式:命令1|命令2
- 范例:
(1)rpm -qalgrep tar
查询所有系统中安装的所有软件包,并从中找出带有字符串"tar"的。
其它分类和其它命令
- 系统工作
- 系统监测
- 查找定位
- 文件编辑
- 目录管理