天天看點

重定向、别名、絕對路徑、相對路徑 詳解

第1章 Linux指令基礎

1.1 習慣

操作前備份,操作後檢查

1.2 簡單目錄結構

一切從根開始,與windows不同

1.3 規則

[root@znix ~]#
[使用者名@主機名 你在哪]#      

1.4 重定向符号

特殊符号-重定向符号:潑水

1.4.1 輸出重定向

>或1>   标準輸出重定向:

先把原檔案的内容清空,然後把新的内容放到檔案中

>>或1>> 追加輸出重定向:

把前面輸出的東西輸入到後邊的檔案中,不會清除檔案原有内容,隻是追加到檔案的最後一行

[root@znix ~]# echo clsnedu.com >>clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.com
[root@znix ~]# echo clsnedu.cn >clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.cn      

2>>  錯誤追加輸出重定向

把指令執行錯誤的資訊追加存放在檔案中

2>   錯誤輸出重定向

先把原檔案的内容清空,然後把錯誤資訊放到檔案中

[root@znix ~]# echa clsnedu.com 2>>clsn.txt

[root@znix ~]# cat clsn.txt
clsnedu.com
-bash: echa: command not found      

把錯誤的内容和正确的資訊都放在一個檔案中.

[root@znix ~]# echo clsnedu.com   >>clsn.txt  2>>clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.com
-bash: echa: command not found
clsnedu.com      

錯誤資訊:

[root@znix ~]# cho clsnedu.com   >>clsn.txt  2>>clsn.txt
[root@znix ~]# cat clsn.txt
clsnedu.com
-bash: echa: command not found
clsnedu.com
-bash: cho: command not found      

簡寫方式:

[root@znix ~]# cho clsnedu.com   >>clsn.txt  2>&1
[root@znix ~]# cho clsnedu.com  &>clsn.txt      

1.4.2 輸入重定向

<或0< 輸入重定向

輸入重定向重定向用于改變指令的輸入。

      目前僅與xargs聯用

執行個體1-1          

[root@znix ~]# cat /data/clsn.txt
1 2 3 4 5
[root@znix ~]# xargs  -n2 </data/clsn.txt
1 2
3 4
5      

<<   追加輸入重定向

使用到的地方不多,目前與cat 一起使用。

執行個體1-2          

[root@znix ~]# cat >>/data/clsn.txt<<EOF
I
am
sudent
> EOF      

1.5 别名

别名  ==  小名

1、為了省事

2、防止犯錯 給危險的linux指令加上别名

1.5.1 查詢别名的方法

使用alias指令可以檢視系統中都有哪些别名。

[root@znix ~]# alias rm cp mv
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'      

1.5.2 别名格式

别名時指令的别名,隻能給一條指令設定别名。

1.5.3 給rm設定别名

①臨時設定

      直接在指令行中添加别名,這個别名隻能臨時使用,斷開連接配接後失效。

[root@znix ~]# alias mv='echo bieyong rm'
[root@znix ~]# alias rm
alias mv='echo bieyong rm'      

②永久設定

a)      把别名放到/etc/profile 檔案最後一行中去,(全局使用),所有使用者都可以使用。

[root@znix ~]# tail -1 /etc/profile
alias rm='echo bieyong rm'      

b)      修改 ~/.bachrc 檔案,僅對目前使用者設定 别名,對其他使用者沒有作用。

[root@znix ~]# vim  .bashrc      

c)      讓修改的配置檔案生效

使用source指令,使配置檔案生效。

[root@znix ~]# source /etc/profile
[root@znix ~]# alias rm
alias rm='echo bieyong rm'      

1.5.4 檢視

1.5.5 臨時取消别名的方法

1)     \  轉義符

[root@znix ~]# \cp /mnt/test.txt /tmp/      

2)     使用指令的絕對路徑

查詢指令的絕對路徑使用which指令

[root@znix ~]# which cp
alias cp='cp -i'
       /bin/cp      

            #使用方法

[root@znix ~]# /bin/cp /mnt/test.txt /tmp/       

1.6 相對路徑與絕對路徑

絕對路徑, 隻要是以根(/)開始的路徑/位置 就是絕對路徑.

/data
 /tmp
 /etc/sysconfig/network-scripts/ifcfg-eth0      

相對路徑, 路徑的最前面 沒有 /, 不是以根開始的路徑.

etc/hosts
 etc/sysconfig/network-scripts/ifcfg-eth0      

1.6.1 切換目前路徑

[root@znix ~]# cd /data/
[root@znix data]# cd /tmp/      

1.6.2 顯示目前所在位置

[root@znix data]# pwd
/data      

作者:慘綠少年

出處:http://clsn.io

本文版權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。