本节内容:

  1,文件权限的控制,chmod,chown

  2,用户的增删和所属组,useradd,userdel

  3,用户组的增删,groupadd,groupdel

  4,su,sudo的介绍

  5,别名的使用,alias

  6,管道符|,重定向

  7,comtab,计划任务

  8,locat,find查找的使用

  9,df,显示所有空间的使用情况

  10,mount硬盘的挂载和卸载

  11,tar解压

  12,grep正则表达

1,文件权限,chmod,chown

r:可读------4

w:可写-----2

x:可执行---1,普通文件可以直接通过./来执行

-:代表没有权限

chmod o+w filename

chmod g+w filename

chmod u+w filename

chmod u=rwx filename

#  其中:
# u 代表所有者(user)
# g 代表所有者所在的组群(group)
# o 代表其他人,但不是u和g (other)
# a 代表全部的人,也就是包括u,g和o
 

2,useradd添加用户,usermod改变用户的信息

# -c 备注 加上备注。并会将此备注文字加在/etc/passwd中的第5项字段中
# -d 用户主文件夹。指定用户登录所进入的目录,并赋予用户对该目录的的完全控制权
# -e 有效期限。指定帐号的有效期限。格式为YYYY-MM-DD,将存储在/etc/shadow
# -f 缓冲天数。限定密码过期后多少天,将该用户帐号停用
# -g 主要组。设置用户所属的主要组 www.cit.cn
# -G 次要组。设置用户所属的次要组,可设置多组
# -M 强制不创建用户主文件夹
# -m 强制建立用户主文件夹,并将/etc/skel/当中的文件复制到用户的根目录下
# -p 密码。输入该帐号的密码
# -s shell。用户登录所使用的shell
# -u uid。指定帐号的标志符user id,简称uid useradd user1 # 添加用户 user1
useradd -d /home/userTT user2
sudo mkdir user1 # 在/home目录下新建用户文件目录
sudo chown user1:user1 user1 # 改变目录的所有者和组的权限
cp /etc/skel/.bash* /home/user1  # 将目录下.bash开始的文件复制到家目录
source /home/user1/.bash* # 可以使家目录下的环境变量生效

  userdel删除用户

userdel  user1  #
userdel -r user1 # -r, --remove 用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手动搜索并删除。
# -f, --force 此选项强制删除用户账户,甚至用户仍然在登录状态。它也强制删除用户的主目录和邮箱,即使其它用户也使用同一个主目录或邮箱不属于指定的用户

  usermod用法:

chmod o+w  file1
chmod g-w file1
chmod go-w file1
chmod u=rwx file1 chmod 755 file1 # -rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
chmod 644 # -rw-r--r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限 # 其中:
# u 代表所有者(user)
# g 代表所有者所在的组群(group)
# o 代表其他人,但不是u和g (other)
# a 代表全部的人,也就是包括u,g和o

3,groupadd,groupdel,chown

groupadd group  # 添加用户组
groupadd -u 1000 group1 #指定gid的用户组

  groupdel  # 删除组

groupdel group  # 删除组

  chown  # 改变文件的所属组所有者

chown root:root  file
chown root file
chown :root file

4,su与 sudo

su  : 切换用户,没有参数时,默认切换为root用户;

su   # 切换为root

## 推荐
su - # 切换为root 并加载root的环境配置
su - user1 # 切换为user1 并加载user1的环境配置

  sudo让当前用户暂时以管理员的身份root来执行命令。

sudo的配置文件:/etc/sudoers;可以通过修改它配置sudo命令

5,alias : 给命令起别名

alias  ll='ls -l'
alias la='ls -a'

 关于各个文件的作用域,在网上找到了以下说明:
(1) /etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
(2) /etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取(即每次新开一个终端,都会执行bashrc)。
(3) ~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次。默认情况下,设置一些环境变量,执行用户的.bashrc文件。
(4) ~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
(5) ~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。(6) ~/.bash_profile: 也可能是 .profile  是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。 

6,管道符,重定向,标准输出

管道符 就是 |  :他的作用是 将前一个命令的结果 交给后一个命令使用

>ww.txt  # 文件ww.txt会变为空的

>   重定向,则覆盖文件内容,没有该文件就创建(需要有创建的权限)

>> 重定向,则向文件追加内容,没有该文件就创建(需要有创建的权限)

1>  标准正确输出,则覆盖文件内容,没有该文件就创建(需要有创建的权限)

1>> 标准正确输出,则向文件追加内容,没有该文件就创建(需要有创建的权限)

2> 标准错误输出,则覆盖文件内容,没有该文件就创建(需要有创建的权限)

2>> 标准错误输出,则向文件追加内容,没有该文件就创建(需要有创建的权限)

&> 标准正确输出和标准错误输出,文件中保存了写入的东西,报错信息也会出现在文件中,没有该文件就创建(需要有创建的权限)

7,crontab,计划任务

crontab -e # 修改计划配置* * * * * command to be executed

-  -   -  -  -  -
| | | | | |
| | | | | --- 预执行的命令
| | | | ----- 表示星期0~7(其中星期天可以用0或7表示)
| | | ------- 表示月份1~12
| | --------- 表示日期1~31
| ----------- 表示小时1~23(0表示0点)
------------- 表示分钟1~59 每分钟用*或者 */1表示
---------- 表示小时1~23(0表示0点) 1,crontab -e 进行编辑操作,选择是用vim,下次不需要选择,自动默认vim,在最下边加入:
*/1**** /bin/bash /tmp/cron.sh
# /bin/bash 指定运行的路径
# cron.sh是自定义的一个文件内容下方
date >> /tmp/date.txt # 这样是防止配置文件中字符超过60个会执行错误
2,crontab -l 显示当前客户的crontab内容

8,locate,find查询命令

locate /etc/sh  # 所有包含/etc/sh路径的文件
locate -i ~/a # 所有主目录下所有以开头的文件,忽略大小写
因为是本地更新,据说是每天凌晨的4点进行更新
可以使用sudo updatedb更新数据库来实现更新

find

使用方法:
find path -option [-print ] [ -exec -ok command ] {} \; ###### 根据文件名查找 #######
find / -name filename 再根目录里面搜索文件名为filename的文件
find /home -name "*.txt"
find /home -iname "*.txt" # 忽略大小写 ###### 根据文件类型查找 #######
find /home/wuzhenhu/Desktop/ . -type 类型参数,有点的时候是可以查找到隐藏文件,没有点的时候不能查到隐藏文件
f 普通文件
l 符号连接
d 目录
c 字符设备
b 块设备
s 套接字
p Fifo ###### 根据目录深度查找 #######
find . -maxdepth 3 -type f # 最大深度为3
find . -mindepth 2 -type f # 最小深度为2 -o:逻辑或,两个条件只要满足一个即可。
-a:逻辑与,两个条件必须同时满足。 find /etc -size +2M -a -size -10M
+代表大于,-代表小于 ######### 对查找结果进行处理 #############
-exec shell命令 {} \;
-ok shell命令 {} \;
其中-exec就是代表要执行shell命令,后面加的是shell指令,再后面的“{}”表示的是要对前面查询到的结果进行查询,最后的“\;”表示命令结束。需要注意的是“{}”和“\”之间是要有空格的。
而-ok选项与-exec的唯一区别就是它在执行shell命令的时候会事先进行询问,-print选项是将结果显示在标准输入上 find /home -name “*.txt” -ok ls -l {} \;
find /home -name “*.txt” -ok rm {} \; 

9,df显示所有空间的使用

df -Th  #
h以能显示的最大单位显示
T:显示文件系统类型

10,mount/mount3挂载和卸载设备

mount # 查询挂在设备及属性

# 挂载光盘
mount /dev/sr0 /mnt # 重新挂载设备
mount -o remount,rw /mnt # 重新挂载设备并设置rw属性 # 挂载iso文件
mount a.iso -o loop /mnt
umount /mnt # 卸载设备
umount -l /mnt # 强制卸载

 11,tar解压,压缩命令

-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意 c/x/t 同时仅能存在一个,因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接文件名
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中! # 将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz
tar czvf this.tar.gz ./*.txt
# 将当前目录下的this.tar.gz中的文件解压到当前目录
tar xzvf this.tar.gz ./ # 将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar
tar -cvf /tmp/etc.tar /etc # 仅打包,不压缩!
tar -zcvf /tmp/etc.tar.gz /etc # 打包后,以 gzip 压缩
tar -jcvf /tmp/etc.tar.bz2 /etc # 打包后,以 bzip2 压缩 # 解压文件
tar -xf a.tar.gz #
tar -xf a.tar.gz -C /tmp # 指定解包路径

12,grep匹配正则表达式

正则表达式:

初识正则表达式
^ : 匹配开头
$ : 匹配结尾
[] : 范围匹配
[a-z] : 匹配有小写字母
[A-Z] : 匹配所有大写字母
[0-9] : 匹配所有数字
. : 匹配单个字符
* : 表示*前面的内容出现0次或多次
+ : 表示+前面的内容出现1次或多次
? : 表示?前面的内容出现0次或1次

cat a.txt |grep hat$ # 匹配以hat结尾的行
cat a.txt |grep ^hat # 匹配以hat开头的行
cat a.txt | grep -E "[0-9]*" # 匹配有0到多个数字的行
cat a.txt | grep -E "[0-9]+" # 匹配有至少有1个数字的行
cat a.txt | grep -E "[0-9]?" # 匹配有0到1个数字的行

ubuntu,day 2 ,退出当前用户,创建用户,查找,su,sudo,管道符,grep,alias,mount,tar解压的更多相关文章

  1. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

  2. 文件操作工具类: 文件/目录的创建、删除、移动、复制、zip压缩与解压.

    FileOperationUtils.java package com.xnl.utils; import java.io.BufferedInputStream; import java.io.Bu ...

  3. 使用secureCRT和Telnet将文件压缩导出到Ubuntu中,到Ubuntu中加压缩发现:tar解压包的时候出现错误gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error is not recoverable: exiting now

    细节描述: 问题如题所示:查找博客园和CSDN上查找问题,得到问题解决方法大致如下: 1 修改解压缩命令: 由 tar zxvf software_package.tar.gz变为tar xvf so ...

  4. mysql(单表查询,多表查询,MySQl创建用户和授权,可视化工具Navicat的使用)

    单表查询 语法: 一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT ...

  5. linux用户创建删除以及文件权限查看修改

    一. 1.查看用户 命令如下:whoami 2.创建用户 创建用户命令:sudo adduser hello 超级用户是 root 删除用户名命令:sudo deluser hello --remov ...

  6. oracle创建表空间、创建用户并赋予权限

    分开执行如下sql语句 --创建临时表空间 CREATE SMALLFILE TEMPORARY TABLESPACE "TEMP11" TEMPFILE 'E:\app\MD\o ...

  7. Oracle 12c 用户创建、角色、权限

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAd4AAADHCAIAAAA4UqVzAAAgAElEQVR4nOy9Z5Bk13UmyN/6vZrlrG

  8. centos6创建用户,设置ssh登录

    创建用户 #创建用户 useradd -s /sbin/nologin mysql useradd –d /usr/china -m china #设置密码 passwd mysql passwd c ...

  9. Oracle 数据库创建表空间、创建用户

    创建表空间 create temporary tablespace user_name_temp tempfile '/oradata/ORA11G/user_name_temp.dbf' size ...

随机推荐

  1. @RequestParam接收解析不到 POST 提交的 数据

    1.使用postman或者其他发送请求模拟器进行模拟访问,需要指定Headers为Content-Type:application/x-www-form-urlencoded;指定body类型为x-w ...

  2. pycharm 3.4 破解

    修改host,增加一行: 0.0.0.0 account.jetbrains.com 使用Activate code注册: EB101IWSWD-eyJsaWNlbnNlSWQiOiJFQjEwMUl ...

  3. c++11 tuple实现

    实现一个简易版的c++11 tuple. 我使用的编译器是gcc,codeblocks13.12自带的,哪个版本我不熟gcc也没去查. 大致看了下他家的tuple实现,多继承,tuple之上还有2个辅 ...

  4. C#中Button.DialogResult属性

    窗体中的某个按钮,如果设置了DialogResult(不是设置为None),当窗体是通过ShowDialog方法显示的时候 则不必设置任何响应函数,单击按钮也可窗体.然后,该窗体的DialogResu ...

  5. Ubuntu 16.04 安装Mysql数据库

    系统环境 Ubuntu 16.04; 安装步骤 1.通过以下环境安装mysql服务端与客户端软件 sudo apt-get install mysql-server apt-get isntall m ...

  6. [UE4]Scroll Box带滚动条的容器

    一.黑边,当可以往下滚动的时候,下边会出现黑边.当可以往上滚动的时候,上边也会出现黑边.   Scroll Box.Style.Style:也可以自定义上下左右黑边的样式: 二.Scroll Box. ...

  7. 转载--无弹窗APT渗透实验

    转载--无弹窗APT渗透实验 文章作者:亚信安全,转载自 FreeBuf.COM APT攻击方式花样繁多,我研究最近的流行的APT攻击方式,在本地搭建环境模拟一次简单的APT攻击,在模拟攻击过程中发现 ...

  8. Runtime 解读

    首先,第一个问题, 1>runtime实现的机制是什么,怎么用,一般用于干嘛? 这个问题我就不跟大家绕弯子了,直接告诉大家, runtime是一套比较底层的纯C语言API, 属于1个C语言库, ...

  9. Vue 父组件调用子组件函数的方法

    parent.vue(父组件的内容): <template> <div @click="divClick"> <info-wnd ref=" ...

  10. Open SuSE 安装Python3.6

    1. 下载Python3.6 tar包 去除Modules/Setup文件167行的注释 readline readline.c -lreadline -ltermcap 2. 下载readline- ...