前言:
眼前看官们对“ubuntuvim创建文件命令”大约比较讲究,你们都想要了解一些“ubuntuvim创建文件命令”的相关文章。那么小编同时在网摘上汇集了一些有关“ubuntuvim创建文件命令””的相关知识,希望各位老铁们能喜欢,大家快快来了解一下吧!1 文件分类
在Linux/Unix下, block, char, dir, fifo, file, link, unknown等七种类型
block :块设备文件, 磁盘分区, 软驱, cd-rom等 b
char: 字符设备, I/O 以字符为单位, 键盘, 打印机等 c
dir: 目录也是文件的一种 d
fifo:命名管道 f
file:普通文件类型 -
link:符号链接, 是指向文件指针的指针, 类似windows中的快捷方式 l
unknown:未知文件
drwxr-xr-x. 5 root root 100 8月 10 22:19 disk
第1列:包含该文件的类型
d 文件夹(dir)
- 普通文件(file)
l 链接文件(link)
b 块设备文件(block)
p 管道文件(fifo)
c 字符设备文件(char)
s 套接口文件(socket)
文件类型后面的9位, 每3个为一组, "r"代表可读, "w"代表可写, "x"代表可执行
前3位为所属主(user)的权限, 中间3位为所属组(group)的权限, 最后3位为其他非本群组用户(others)的权限
第2列: 表示链接占用的节点(innode), 如果是目录, 那这个数值与该目录下是子目录数量有关。
第3列:表示该文件的所属主。
第4列:表示该文件的所属组。
第5列:表示该文件的大小。
第6列、第7列和第8列:表示该文件最后一次被修改的时间(mtime), 依次为月份、日期以及时间。
第9列:表示文件名
2、文件权限
r权限:(可读权限), 权重值4
w权限:(可写权限), 权重值2
x权限:(可执行权限), 权重值1
常用的权限代码:777、755、644, 这些数字都是由(4、2、1拼接而来的), 采用八进制
① 7 = 4 + 2 + 1 = r + w + x = 可读可写可执行
② 5 = 4 + 1 = r + x = 可读可执行
③ 4 = 4 = r = 可读权限
1 可执行
2 可写
3 可执行可写
4 可读
5 可读可执行
6 可读可写
7 可读可写可执行
3、目录操作(创建目录与删除目录)
mkdir指令 创建目录
选项:
-p:parent的缩写, 若所要建立目录的上层目录目前尚未建立, 则会一并建立上层目录。
> mkdir -p Application/Admin/Controller
-m:mode的缩写, 创建目录时指定目录权限
> cd Application
> mkdir -m 777 Runtime
rmdir指令:删除目录
选项:
-p: parent的缩写, 删除指定目录后, 若该目录的上层目录已变成空目录, 则将其一并删除。
注意:在Linux中使用rmdir指令删除文件夹时必须保证其内部没有子文件或子文件夹, 否则无法删除, 即使用rmdir -p也不能删除,
因为rmdir指令只能删除目录, 不能删除文件, 如果要删除有子文件的目录可以使用rm -r指令删除含有子文件的目录(谨慎操作)
5、文件操作(创建文件与删除文件)
创建文件
方法一:使用vim指令(vim代表创建并打开), 如果文件未保存, 则该文件不存在。
方法二:使用touch指令(touch代表只创建文件但不打开)
删除文件(强烈推荐)
rm指令 删除文件
-r:recursive的缩写 递归处理, 将指定目录下的所有文件及子目录一并处理。
> rm -r Applicatin
输入y(或yes)或n(no)来确定或取消
注意:执行rm指令可删除文件, 如欲删除目录必须加上参数"-r", 否则预设仅会删除文件。
-f:force的缩写 删除时不弹出确认提示
> rm -rf Application
6、复制与剪切(重命名)操作
cp指令
cp [参数] <源文件路径> <目标文件路径>:复制文件到目标路径
-r(或-R):recursive的缩写, 递归处理, 将指定目录下的所有文件与子目录一并处理。
-p(小写):preserve的缩写, 复制时保持文件的原有权限
-v:显示复制进度(进度条)
> cp file1 dir1
mv指令
mv [参数] [源文件或目录] <目标文件或目录>:剪切文件到目标路径
-v:显示剪切进度(进度条)
> mv dir1/dir2 dir3/dir4 //dir2移动到dir4目录下, 并改名字为原名
> mv dir1/dir2 dir3/dir4 //dir2移动到dir4目录下, 并改名字为原名
mv除了可以剪切还可以重命名文件, 基本语法:
> mv oldFileName newFileName
如何判断是重命名还是移动文件
只在当前目录下操作, 则是重命名;
在不同的目录下操作, 则是移动文件;
7、文件统计
wc [参数] <文件列表>
-c:character缩写, 统计文件中一共有多少个字符
-l:line缩写, 统计文件中一共有多少行
-w:word缩写, 统计文件中一共有多少个单词
> wc filename //查看文件行数
7 8 70 test.txt
行数 单词数 字节数 文件名
8、grep搜索匹配行
grep [参数] <'字符串'> <源文件>
-n:显示所有匹配到的关键词所在行号
> grep -n mysql install.log
-c:统计一共有多少个匹配的行
> grep -c mysql install.log
-i:ignore缩写, 匹配关键词时忽略大小写
> grep -ci mysql install.log
9、显示文件内容
cat正序显示文件所有内容
-n 由1开始对所有输出的行数编号
> cat user.txt
> cat -n 2 user.txt
tac倒序显示文件的所有内容
-n 由1开始对所有输出的行数编号
> tac user.txt
> tac -n 2 user.txt
10、更改文件权限
chmod:更改文件权限
chmod 用户名 文件名
-R :递归(只能是大写的) recursive缩写
> chmod -R 777 oa
u 表示文件拥有者
g 表示文件所属的用户组
o 表示其他用户
a a = u+g+o
+ 增加权限
- 减少权限
= 设置权限
r 可读取
w 可写入
x 可执行
-R 递归修改
chmod u+r a.txt # 所属用户增加可读权限
chmod u-r a.txt # 所属用户减少可读权限
chmod u=r a.txt # 所属用户设置可读权限
chmod a+r a.txt # 给所有人增加可读权限
chmod u+x,g+w a.txt # 同时修改多个权限
chmod ug+x a.txt # 同时修改多个权限
chmod 777 a.txt # 给所有人增加读、写、执行权限
chmod -R 777 目录 # 修改目录及目录下所有文件的权限
chown:更改文件的拥有者
-R :递归(只能是大写的)
> chmod -R xutao oa
chgrp:更改文件的所属组
-R :递归(只能是大写的)
> chmod -R xutao oa
11、创建软链接(快捷方式)
基本语法:
ln -s <源文件或目录> <目标文件或目录>
特别注意:软链接的创建器源文件与目标文件的路径必须是全路径(从根路径开始), 如果为当前路径下的文件指定软连接, 则不必写全路径。
> cd /home
> ln -s data.txt /home/data.txt
命令: umask
上边也提到了默认情况下, 目录权限值为755, 普通文件权限值为644, 那么这个值是由谁规定呢? 追究其原因就涉及到了 'umask'.
umask语法: umask xxx (这里的xxx代表三个数字)
查看umask值只要输入 ‘umask’ 然后回车。
> # umask
0022
umask预设是0022, 其代表什么含义? 先看一下下面的规则:
1) 若用户建立为普通文件, 则预设 '没有可执行权限', 只有'rw'两个权限。最大为666 ('-rw-rw-rw-').
2) 若用户建立为目录, 则预设所有权限均开放, 即777 ('drwxrwxrwx').
umask数值代表的含义为, 上边两条规则中的默认值(文件为666,目录为777)需要减掉的权限。所以目录的权限为 'rwxrwxrwx' - '----w--w-' = 'rwxr-xr-x',
普通文件的权限为 'rw-rw-rw-' - '----w--w-' = 'rw-r--r--'.
umask的值是可以自定义的, 比如设定umask 为 002, 你再创建目录或者文件时,
默认权限分别为 'rwxrwxrwx' - '-------w-' = 'rwxrwxr-x' 和 'rw-rw-rw-' - '-------w-' = 'rw-rw-r--'.
[root@localhost ~]# umask 002
[root@localhost ~]# mkdir test2
[root@localhost ~]# ls -ld test2
drwxrwxr-x 2 root root 4096 5月 10 09:44 test2
[root@localhost ~]# touch test3
[root@localhost ~]# ls -l test3
-rw-rw-r-- 1 root root 0 5月 10 09:45 test3
可以看到创建的目录权限默认变为775, 而文件默认权限变为664. 然后再把umask改回来。
[root@localhost ~]# umask 022
[root@localhost ~]# touch test4
[root@localhost ~]# ls -l test4
-rw-r--r-- 1 root root 0 5月 10 09:45 test4
umask 可以在 /etc/bashrc 里面更改, 预设情况下, root的umask为022, 而一般使用者则为002, 因为可写的权限非常重要, 因此预设会去掉写权限。
递归修改目录权限为755, 文件权限为644
1.修改所有者:
> # chown -R root.root path(递归修改指定路径的所有文件为root用户组所有)
2.修改目录权限:
> # find path -type d -exec chmod 755 {} \;
3.修改文件权限:
> # find path -type f -exec chmod 644 {} \;
标签: #ubuntuvim创建文件命令