Linux操作系统之用户权限,重定向,文件管理
文件的权限
ls -al ----->隐藏文件会以 .号开头
ls -ld :显示目录自身属性
ls -i 显示文件的索引号----每个文件都有一个对应的号码
ls -r 逆序显示
dr-xr-xr-x. 2 root root 12288 Nov 2 2012 .
lrwxrwxrwx. 1 root root 17 Oct 20 2012 accton -> ../../sbin/accton
文件类型 与权限 |
链接占用的 节点(i-node) |
文件所有者 |
文件所有者 的用户组 |
文件大小 |
时间戳/最近修改时间 |
文件名称 |
dr-xr-xr-x. |
2 |
root |
root |
12288 |
Nov 2 2012 |
. |
lrwxrwxrwx. |
1 |
root |
root |
17 |
Oct 20 |
../../sbin/accton |
(1)其中第1位表示文件类型,有以下几种:
-: 表示普通文件
d: 目录
b: 块特殊文件
c: 字符特殊文件
l: 符号链接文件
p: 命名管道文件FIFO
s: 套接字文件
(2) r:表示可读; w:表示可写;x:表示可执行;
( 3 ) 时间戳:最近一次被修改的时间
访问时间、修改时间、改变时间(元数据)
stat 文件/文件夹名----查看文件及文件夹状态(最近一次访问、修改、改变时间)
touch -m -t 年 月 日 文件名 (把文件的修改时间改为自己定义时间)
"." 代表当前目录
".." 代表当前目录的上一级目录
cd - 在前一个目录和当前目录进行切换
type:显示指定命令属于那种类型, ...a shell builtir 这个命令为内部,显示路径为外部。
环境变量:定义用户使用的环境!“命名的内存空间,name=jre-->在内存中划出一块空间,起名为name.而空间中放的数据叫jre,放数据的过程叫“变量赋值”。变量--->把存放的数据进行更改”。
printenv-----显示环境变量
个字符
2.不能使用斜线当文件名(斜线:路径分隔符、目录名、换行符)
3.严格区分大小写
tree 文件夹名 ----查看目录树
file 文件名 ----文件内容的类型
id
功能说明:显示用户的ID,以及所属群组的ID。
补充说明:id会显示用户以及所属群组的实际与有效ID。若两个ID相同,则仅显示实际ID。若仅指定用户名称,则显示目前用户的ID。
参 数:
-g或--group 显示用户所属群组的ID。
-G或--groups 显示用户所属附加群组的ID。
-n或--name 显示用户,所属群组或附加群组的名称。
-r或--real 显示实际ID。
-u或--user 显示用户ID。
管理文件类型命令
段。cut -f 1,3:第一和第三段.
1-3:第一到第三段 .
位,第一位是特殊权限
转换表
八进制 二进制
0 000 - - -:无权限
1 001 - - x:执行
2 010 - w -:写
3 011 - w x:写、执行
4 100 r - - :只读
5 101 r - x :读和执行
6 110 r w - :读写
7 111 r w x :读写执行
755:rwxr-xr-x
r w - r - x - - r:651
用户:UID,/etc/passwd 用户名解析成UID号的解析库,也可以叫用户信息库。
用户密码不在信息库中,在/etc/shadow中。
组:GID, /etc/group 组解析成GID号的解析库,
组的密码不在信息库中,在/etc/gshadow中。
用户分类(ID号永远为0)、普通用户(UID号1-65535。系统用户1-499,一般用户500-60000)
注:在企业的红帽系统中,用32位2进制表示ID号,能达到4亿多个!
/etc/passwd :
用户名 密码(x密码占用符) 用户id 基本组id 用户注释信息 家目录 用户默认shell
/etc/shells : 当前系统支持的所有shell类型。
/etc/shadow :
登录名 加密密码(!!为锁定,不予许登录) 密码修改时间 密码最短使用时间 密码最长使用时间 警告时间
宽限期 有效期 保留字段
用户管理命令:
useradd :添加用户 userdel :删除用户
修改密码:passwd +用户名
id -u :取得用户UID号
修改文件及文件夹属主属组:修改属主(chown +用户名+文件名)、修改属组(chgrp+组名+文件名)。
修改文件及文件夹权限:
chmod: 修改文件的权限, -R递归
u(用户)、g(组)、o(其他)、a(全部)
例:chmod u/g/a/o -/+ r/w/x 文件名
管理员与普通用户创建文件的权限不相同?
umask:反掩码,通过这个命令可以查看用户的反掩码,管理员和用户umask不一样!
通常创建文件和文件夹时:
创建文件:六六六 - umask
创建文件夹:777 - umask
文件默认一定不能有执行权限,若算出结果有执行,加一!!!
站在用户登录的角度来说,shell的类型:
登陆式shell
正常输入账号密码登录
su - 登录
非登陆式shell
su 用户名
图形终端下打开的窗口
自动执行的shell脚本
bash的配置文件:
全局配置
/etc/profile、 /etc/profile.d/*.sh、 /etc/bashrc
个人配置
~/ .bash_profile 、 ~/.bash_rc
profile类的文件:
设定环境变量。作用范围越小,越有效。,也就是sticky权限。
l/o重定向管理
l/o重定向:改变数据的输入输出来源(包括错误输出)
>:输出重定向(覆盖输出):执行两次数据输出到同一个文件中,最后一次输出会覆盖第一次的数据。
>>:追加输出,执行两次数据输出到同一个文件中,不会覆盖,会在原有数据后面追加!
小技巧:使用set -C (开启),set +C(关闭)。禁止对已存在的文件使用覆盖重定向。
若想覆盖,又不想关闭这个功能,只需在>|(在大于号下加‘|’)----强制覆盖。
2>:重定向错误输出
2>>:追加方式重定向错误输出
ls /etc > /jj 2> /jj2 :若正确输出到jj文件中,若错误输出到jj2文件中!
&>:重定向标准输出或错误输出至同一文件中。
&>>:追加方式
<:输入重定向。
<<:在此处生成文档。
cat >> /jj << END :通常用于写脚本。把<<END中所写的内容添加到/jj!
END结束符:写完内容后,最后把END写出来,这个文档结束。
管道
命令1 | 命令2 | 命令3 |
命令1的结果是命令2的输入,命令2的结果是命令3的输入,可以是多重的!
管道:前一个命令的输出,作为后一个命令的输入!
tee :可以理解为一个输入,两个输出,从标准输入读取数据,并且发送至标准输出和文件!
能实现将一个数据同时输出到屏幕和文件中
查找文件类型命令
locate :(一般不用)在全系统查找文件的命令。非精确匹配,查找是根据全系统文件数据库进行的。速度快!
updatedb: 手动生成数据库,但是速度非常慢
find :实时查找、精确、遍历指定目录中的所有文件完成查找。---支持多项查找。
格式: find 查找路径 查找标准 文件名 查找到以后的处理动作
查找路径:默认是在当前目录
超找标准:默认为指定路径下的所有文件
处理动作:默认显示到屏幕上
匹配标准:
- ls :显示文件大小
- name 文件名 :对文件名做精确匹配
支持文件名通配:
* 任意长度的任意字符
?单个任意字符
- iname 文件名 :文件名匹配时不区分大小写
- regex :基于正则表达式模式来进行查找
- user 用户名 :根据文件的属主来查找文件
- group 组名 :根据文件的属组来查找文件
- uid UID号 :若一个文件的属主用户删除之后,文件的属主会变成原先删除用户的ID号!
- gid GID号 :根据GID号查找
- nouser :查找没有属主的文件
- nogroup: 查找没有属组的文件
- type :根据文件类型来查找
文件类型:
f: 表示普通文件
d: 目录
b: 块特殊文件
c: 字符特殊文件
l: 符号链接文件
p: 命名管道文件FIFO
s: 套接字文件
- size : 根据文件大小来查找文件 单位为(K/M/G)
+10k/-10k/10k : 大于10k/小于10k/精确10k
组合条件查找:
-a :与条件,两个条件同时满足
-o :或条件
-not :非条件
实验: 查找tmp目录下没有属主和文件类型为目录的文件,详细显示
find /tmp -nouser -a -type d -ls
实验: 查找tmp目录下,属主不是user1 还不是user2的文件
find /tmp -not -user user1 -a -not -user use2
find /tmp -not \(-user user1 -a -not -user use2\)
根据时间戳查找:
-mtime : 最近一次文件的修改时间
-ctime : 最近一次文件的改变时间
-atime : 最近一次文件的访问时间
+ :几天之内访问过
- :至少有几天没有访问过
没有添加+/-号后面直接跟数字,说明刚好在那一天访问过。
Linux操作系统之用户权限,重定向,文件管理的更多相关文章
- linux 中更改用户权限和用户组的命令chmod,chgrp实例
linux 中更改用户权限和用户组的命令实例; 增加权限给当前用户 chmod +wx filename chmod -R 777 /upload 用户组 chgrp -R foldname zdz ...
- LinuX操作系统基础------> 用户管理,grep搜索
用户管理 用户组管理 字符管理和grep搜索 1.用户管理: LinuX是一个多用户,多任务的操作系统,可以让多个用户使用,这个账号可以帮助对用户进行追踪,必须在初始化的时候设置好自己的密码 1-1配 ...
- linux如何设置用户权限
linux与用户权限设置: 1.添加用户 首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户 #passwd tommy //修改密码 ...
- 【Linux】sudo用户权限管理
权力下放 一.权力分配- sudo Sudo是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的"权力",让 他们执行一些只有超级用户或其他特 ...
- Linux下的用户权限
用户权限: drwxr-xr-x root root - : boot #权限位 硬连接数 所属用户 所属组 大小 最后修改时间 文件/目录# r w x 4 2 1 用户权限位分为3段,分别对应US ...
- [Linux系统] (2)用户权限管理
示例---普通用户之间的文件共享:假设公司有2个项目组,共享同一台服务器. 1.为两个项目组各创建一个用户: useradd leo01 useradd leo02 2.为两个新用户设置密码: pas ...
- Linux培训教程 linux下修改用户权限的方法
一般我们日常碰到要修改用户权限的,往往是要么修改一下用户的gorupid,通过上面命令可以改;要么是把普通用户改成具有超级权限的用户,这个一般自己不能直接改,只能是root或有root权限的用户才能帮 ...
- linux 基础 文件系统 用户权限
描述Linux系统的启动过程? 1.开机自检 BIOS 2.MBR引导 3.GRUB菜单 4.加载内核 5.运行init进程 6.从/etc/inittab读取运行级别 7.根据/etc/rc.sys ...
- 【linux 06】 linux中的用户权限、文件权限与目录权限
1.用户及用户组的概念: 1.文件所有者 2.用户组 3.用户 以root登录Linux之后,执行ls -al,会看到有关文件属性的信息 -rw-r--r--,第1个字符代表这个文件是“目录,文件或链 ...
随机推荐
- 下载mqtt.fx
#下载mqtt.fxhttp://www.jensd.de/apps/mqttfx/1.7.1/
- Solr的核心操作案例
@Service public class SearchServiceImpl implements SearchService { @Autowired private SolrTemplate s ...
- 记遇到的Release和Debug下有些不同
平常开发用Debug,但是发布的时候用Release,应该是很多单位都会用的,但是有的时候你发现Debug下好使,Release下不好使,这就遇到坑了. 我也是这两天连续遇到了两次,在此记录一下,如果 ...
- 此页面上的脚本造成Web浏览器运行速度减慢。如果继续运行,您的计算机将可能停止响应。
访问者所使用的浏览器不能完全支持页面里的脚本,形成“脚本错误”.遇到“脚本错误”时一般会弹出一个非常难看的脚本运行错误警告窗口,而事实上,脚本错误并不会影响网站浏览,因此这一警告可谓多此一举.要关闭警 ...
- Docker方式安装SonarQube
获取镜像 docker pull postgres: docker pull sonarqube:-community 启动镜像 docker run -d -p : -e POSTGRES_PASS ...
- 【2019年05月07日】A股最便宜的股票
新钢股份(SH600782) - 当前便宜指数:193.2 - 滚动扣非市盈率PE:2.99 - 滚动市净率PB:0.87 - 动态年化股息收益率:1.68%- 新钢股份(SH600782)的历史市盈 ...
- cad.net 读取pc3,pmp 读取pc3打印机文件
修改pc3文件还没做好..大家先look look怎么读.... 首先弄一个控制台程序, 然后去下载 Ionic.Zip 这个东西...载到控制台...都很简单... 然后就是复制下面代码,看控制台显 ...
- 一个萝卜一个坑#M坑—Polynomial、Polyder
Polynomial 作用:对输入值执行多项式系数计算,输入输出都可为实数标量或向量. 库:Simulink / Math Operations Polyval 作用:多项式计算,即求多项式在某一点的 ...
- linux 判断一个用户是否存在
#!/bin/bash read -p "please input a username:" username >&; then echo "user ex ...
- mybatis使用用stdout-logging日志显示sql语句
在开发中,我们很多时候需要知道当前执行的sql语句是什么样的,但是默认mybatis是不显示sql的,此时我们就可以使用stdout-logging了.1.创建mybatis-config.xml文件 ...