可以使用 chmod 命令通过字符符号或二进制掩码来设置访问权限 。要使用二进制掩码,必须将三个权限组的字符表示转换成二进制格式,然后转换成八进制格式:
用户类别: 所有者 用户组 其它
字符表示: rwx r-x r--
二进制表示: 111 101 100
八进制表示: 7 5 4
将写权限赋予用户组,您可以使用:
chmod g+w test.sh or chmod 774 test.sh
用 umask 命令,在 /etc/init.dev 文件中进行系统范围内的、或在 .profile 文件中进行的本地的文件权限默认设置 。这个命令指示用 777 减去这个数字来获取默认的权限:
$ umask 022
这将为用户创建的所有新文件生成一个默认的文件权限 755 。
可以用 chown 来修改文件的所有权:
$ chown bluher ls.out
这里,bluher 是新的文件所有者 。类似地,组成员资格将按以下方式修改:
$ chgrp devgrp ls.out
这里,devgrp 是新的用户组 。
ls 不提供哪些文件是文本的 , 哪些文件是二进制的的信息 。要了解这个信息,您可以使用 file * 命令 。
重命名文件
赋予一个文件多个名字的两种流行的方法是利用链接和 alias 命令 。Alias 可以用来为一个更长的命令重新起一个更方便的名字:
$ alias ll='ls -l'
$ ll
注意单引号的使用,这使得 BASH 将该项目传递给别名,而不是自己估计它 。别名还可用作较长的路径名的缩写:
$ alias jdev9i=/jdev9i/jdev/bin/jdev
关于 alias 和它的反命令 unalias 的更多信息 , 请查看 BASH 的 man 页面的 "SHELL BUILTIN COMMANDS" 子部分 。在最后一个例子中,定义了一个环境变量来实现相同的结果 。
$ export JDEV_HOME=/jdev9i/jdev/bin/jdev
$ echo $JDEV_HOME
/jdev9i/jdev/bin/jdev
$ $JDEV_HOME
链接允许几个文件名引用单个源文件,格式如下:
ln [-s] fileyouwanttolinkto newname
单独的 ln 命令创建到文件的一个硬链接,而使用 -s 选项来创建一个符号链接 。简而言之,一个硬链接几乎不能和原始的文件区分开(除了这两个文件的 inode 将相同之外) 。符号链接较容易区分,因为它们出现在一个长的文件列表中 , 并用 -; 来指示源文件,l 指示文件类型 。
查看和查找文件
文件过滤器
用来读取文件内容和在文件内容上执行操作的命令有时被称为 1滤器 。sed 和 awk 命令是两个滤波器的例子,因为在以前的 OTN 文章中有它们详细的讨论,在这里将略过 。
诸如 cat、 more 和 less 之类的命令让您能够从命令行查看一个文本文件的内容 , 而无需调用编辑器 。Cat 是 "concatenate" 的缩写,它将默认地在标准输出(显示屏)上显示文件内容 。和 cat 一起提供的最有趣的选项之一是 -n 选项,它用编号的输出行来显示文件内容 。
$ cat -n test.out
1This is a test.
因为 cat 一次性输出文件中的所有行,所以您可能更喜欢用 more 和 less,因为它们都一次输出一屏的文件内容 。Less 是 more 的一个增强的版本,它允许用来自 vi 文本编辑器的关键命令来增强文件查看 。例如,d 向前翻滚、b 向后翻滚 N 行(如果 N 是在 d 或 b 之前指定的) 。为 N 输入的值成为随后的 d 命令的默认值 。man 页面实用工具使用 less 来显示使用说明的内容 。
重定向和管道
重定向允许将命令输出重定向到文件中 , 而不是标准输出,或者类似地,也可重定向输入 。重定向的标准符号 ; 创建一个新的文件 。;; 符号将输出添加到一个现有的文件中:
$ more test2.out
Another test.
$ cat test.out ;; test2.out
$ cat test2.out
Another test.
推荐阅读
- 拍摄电影用什么摄像,拍摄电影用什么摄像头好
- 美团如何买推广产品,怎样在美团上推广自己的产品要交钱吗
- 怎么把东西考到u盘里,怎么把东西拷进u盘
- 微信怎么发送视频号呢图片,微信视频号怎么发表图片
- c语言中定位函数 c语言gps定位程序
- sqlserver自定义报表,sqlserver怎么生成报表
- 怎么修复u盘推荐手机,u盘修复手机软件
- erp系统开场,erp系统启动会发言
- php一条数据 php输出数据库五条数据