在Linux基礎知識系列之一中提到ls -l=ll,這個就是Linux中的別名,使用alias能夠查看系統默認的別名。
shell
[root@hadoop001 ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
複製代碼
使用alias 別名=命令字符串就能夠在當前session會話中生效,若是你想要一直生效,請在環境變量文件末中增添上述命令,有關環境變量的請看下一節。centos
[root@hadoop001 ~]# alias ul='cd /usr/local'
[root@hadoop001 ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias ul='cd /usr/local' <-- 新增的
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@hadoop001 ~]# ul
[root@hadoop001 local]# pwd
/usr/local
複製代碼
#env
alias ul='cd /usr/local'
複製代碼
固然光增添代碼是不夠的,必定要使全局變量生效,使用如下命令都可bash
. /etc/profile
或者
source /etc/profile
複製代碼
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
#env
alias rc='cd /root/xxx'
複製代碼
使其生效也是上述兩種。session
. ~/.bash_profile . ~/.bashrc
或者
source ~/.bash_profile source ~/.bashrc
複製代碼
通常都是使用 rm -rf 文件名,這種方式會強制刪除文件或者文件夾,-f表示強制,-r表示能夠文件夾。常常聽到就是 rm -rf /*,也就是刪庫跑路。固然通常人都不會這樣直接運行,可是可能會在shell腳本出現這種錯,如下場景就致使這種狀況。oop
shell腳本可能會這樣
xxxpath=xxx/xx
...(邏輯部分)
rm -rf $xxxpath/* 這裏就是個坑
若是一空值賦予給了xxxpath,那麼不就成了rm -rf /*
因此在生產上凡是遇見rm -rf強制刪除文件夾的,路徑必定先判斷存在不,不存在 就skip;就存在就rm
複製代碼
history -c 就是清除命令記錄,固然我的用戶登錄時,~/.bash_history也會記錄命令,因此要清除的話,記得也把它給刪掉。post
[root@hadoop001 ~]# id dengdi
uid=1001(dengdi) gid=1001(dengdi) groups=1001(dengdi)
用戶ID 主組ID 全部組
複製代碼
dengdi(用戶名):x:1001(用戶id):1001(主組id)::/home/dengdi(家目錄):/bin/bash(執行解釋器)
若是/bin/bash變成/bin/false或者/sbin/nologin,這個用戶就不能登錄了
複製代碼
[root@hadoop001 ~]# ll /home/
total 0
drwx------. 3 centos centos 70 Jun 28 2017 centos
drwx------ 2 1001 1001 59 Jun 17 23:48 dengdi
複製代碼
[root@hadoop001 ~]# userdel dengdi
[root@hadoop001 ~]# useradd dengdi
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
Creating mailbox file: File exists
複製代碼
來看看系統提示的skel directory是什麼,咱們ll -a /home/dengdiui
[root@hadoop001 ~]# ll -a /home/dengdi/
total 12
drwx------ 2 dengdi dengdi 59 Jun 17 23:48 .
drwxr-xr-x. 4 root root 32 Jun 17 23:48 ..
-rw-r--r-- 1 dengdi dengdi 18 Apr 11 2018 .bash_logout
-rw-r--r-- 1 dengdi dengdi 193 Apr 11 2018 .bash_profile
-rw-r--r-- 1 dengdi dengdi 231 Apr 11 2018 .bashrc
複製代碼
skel directory就是.bash*全部的隱藏文件,嘗試將這些刪除而後切換dengdi用戶spa
[root@hadoop001 ~]# ll -a /home/dengdi/
total 16
drwx------ 2 dengdi dengdi 79 Jun 18 00:06 .
drwxr-xr-x. 4 root root 32 Jun 17 23:48 ..
-rw------- 1 dengdi dengdi 5 Jun 18 00:06 .bash_history
-rw-r--r-- 1 dengdi dengdi 18 Apr 11 2018 .bash_logout
-rw-r--r-- 1 dengdi dengdi 193 Apr 11 2018 .bash_profile
-rw-r--r-- 1 dengdi dengdi 231 Apr 11 2018 .bashrc
[root@hadoop001 ~]# rm -rf /home/dengdi/.*
rm: refusing to remove ‘.’ or ‘..’ directory: skipping ‘/home/dengdi/.’
rm: refusing to remove ‘.’ or ‘..’ directory: skipping ‘/home/dengdi/..’
[root@hadoop001 ~]# ll -a /home/dengdi/
total 0
drwx------ 2 dengdi dengdi 6 Jun 18 00:08 .
drwxr-xr-x. 4 root root 32 Jun 17 23:48 ..
[root@hadoop001 ~]# su - dengdi
Last login: Tue Jun 18 00:07:26 CST 2019 on pts/0
-bash-4.2$
複製代碼
因此skel directory是決定你的[root@hadoop001 ~]仍是-bash-4.2$ 6. groupadd 用戶組==>新增用戶組 usermod -a -G 用戶組 dengdi==>添加用戶組新成員爲dengdi usermod -g 用戶組 dengdi==>修改xxx爲主組code
[root@hadoop001 ~]# groupadd bigdata
[root@hadoop001 ~]# id ruoze
uid=501(ruoze) gid=501(ruoze) groups=501(ruoze)
[root@hadoop001 ~]# usermod -a -G bigdata ruoze
[root@hadoop001 ~]# id ruoze
uid=501(ruoze) gid=501(ruoze) groups=501(ruoze),502(bigdata)
[root@hadoop001 ~]# usermod -g bigdata ruoze
[root@hadoop001 ~]# id ruoze
uid=501(ruoze) gid=502(bigdata) groups=502(bigdata)
這裏從新指定主組以後,會丟失原來的主組
複製代碼
usermod -d 路徑 用戶
或者
vi /etc/passwd
複製代碼
su ruoze 切換用戶 當前路徑不會變,就是切換以前的路徑
su - ruoze 切換用戶 且切到該用戶的家目錄,且執行環境變量文件生效
複製代碼