對$()與``區別的理解
本人Linux新手一枚,所以對$()和``的用法有點困惑,很多文章說這兩是一樣的
但測試下來還是有不同地方
個人認為$()邏輯層次比較清晰
``和$()在轉義字符\的使用上有很大不一樣
例如:
echo $(echo \\\\\\$SHELL)
結果會顯示:\\\/bin/bash
但,echo `echo \\\\\\$SHELL`
結果會顯示:\/bin/bash
原因個人覺得:``裏的一個\不能算轉義字符,而是要兩個成為一組時才能合並成一個轉義字符來看待,
echo `echo \$SHELL`的結果和echo `echo $SHELL`一樣,都是/bin/bash
這些通過
echo `echo \\\\\\\\$SHELL` 等同於4個轉義字符,結果是\\/bin/bash,這個結果和echo $(echo \\\\$SHELL)是一樣的,在$(),一個\等於一個轉義字符
如有疏漏或錯誤,請各位大俠指出不足之處,謝謝
本文出自 “101010...010101” 博客,請務必保留此出處http://legendland.blog.51cto.com/2043145/1951783
對$()與``區別的理解
相關推薦
對$()與``區別的理解
linux本人Linux新手一枚,所以對$()和``的用法有點困惑,很多文章說這兩是一樣的但測試下來還是有不同地方個人認為$()邏輯層次比較清晰``和$()在轉義字符\的使用上有很大不一樣例如:echo $(echo \\\\\\$SHELL)結果會顯示:\\\/bin/bash但,echo `echo \\
mybatis深入理解之 # 與 $ 區別以及 sql 預編譯
tcl nec from esql 校驗 ntp code 理解 替換字符串 mybatis 中使用 sqlMap 進行 sql 查詢時,經常需要動態傳遞參數,例如我們需要根據用戶的姓名來篩選用戶時,sql 如下: select * from user where nam
str和repr的理解與區別
str和repr的理解與區別 class Me(object): def __init__(self, name, hobby): self.name = name self.hobby = hobby def __str__(self
深拷貝與淺拷貝的理解與區別
一 . 淺拷貝與深拷貝的區別 深拷貝:指的是拷貝一個物件時,它是把物件的引用進行復制,還把改物件引用的值也一起拷貝. 這樣進行深拷貝過後的拷貝物件和源物件就是兩個相互獨立互不相干的物件,深拷貝在拷貝時 遇到相同屬性的則替換,不同的則保留,常用於拷貝多層屬性的物件!
02-理解多執行緒與併發之間的聯絡與區別
多執行緒和併發之間到底有什麼關聯呢?它們之間又有哪些差異呢?我們本節課就來探討一下。 首先說一下什麼是多執行緒,其實之前已經給大家講了一個非常簡單的例子了 假如這是我們的一個應用,假如我們在這裡面寫程式碼 我們知道,程式是一行一行的往下執行的,在Java虛擬機器執行時記憶體區
__block 與 __weak的區別理解
Blocks理解: Blocks可以訪問區域性變數,但是不能修改 如果修改區域性變數,需要加__block __block int multiplier = 7; int (^myBlock)(int) = ^(int num) { mult
從彙編和高階語言的角度理解傳值方式,傳值,傳引用,傳指標的本質機制與區別。白話通俗易懂。
函式的傳參與返回值的方式有傳值和傳遞引用,c語言中就是傳值,而c++擴充套件傳引用。 而傳值分為傳遞值(實參的值,此時形參是實參在記憶體中的一份拷貝,形參在使用時分配記憶體,結束時釋放,實參和形參在記憶體中的地址不同,因此對形參的改變不會改變實參) 傳值的另外一種是傳指標
《深入理解mybatis原理(十二)》 mybatis深入理解之#與$區別
一、介紹 mybatis 中使用 Mapper.xml裡面的配置進行 sql 查詢,經常需要動態傳遞引數,例如我們需要根據使用者的姓名來篩選使用者時,sql 如下: select * from user where name = "Jack";上述 sql 中,我們希
Go與Java中package的理解與區別
一.GO中package的使用 package是go程式中最基本的分發單位和工程管理中依賴關係的體現,一個"xx.go"原始檔必須屬於某個package,一個package可以拆成多個".go"原始檔; 每個".go"原始碼檔案開頭都擁有一個package宣告,表示該原
HashMap和HashTable的理解與區別
Hashtable是java一開始釋出時就提供的鍵值對映的資料結構,而HashMap產生於JDK1.2。雖然Hashtable比HashMap出現的早一些,但是現在Hashtable基本上已經被棄用了。而HashMap已經成為應用最為廣泛的一種資料型別了。造成這樣的原因
MATLAB GUI handles與hObject的區別理解
用下面這個回撥函式來引出話題: <span style="font-size:18px;">function=pushbutton1_Callback(hObject, eventda
理解maven命令package、install、deploy的聯系與區別
-c net ofo cycle 單元測試 可執行 tex lean ins 我們在用maven構建java項目時,最常用的打包命令有mvn package、mvn install、deploy,這三個命令都可完成打jar包或war(當然也可以是其它形式的包)的功能
淺談mmap()和ioremap()的用法與區別
12只 設備 gpa 我們 之間 mmap ioremap shared set 一、mmap()mmap()函數是用來將設備內存線性地址映射到用戶地址空間。(1)首先映射基地址,再通過偏移地址尋址;(2)unsigned char *map_cru_base=(unsig
angular js 中conpile與link應用與區別
點擊 ive 增刪 html ret ont 綁定 function cli link方法是compile拋出來的一個方法 應用 app.directive("thumbNail",function(){ return{ restrict:"AC
抽象類和接口的聯系與區別
語法 .html 註意 角度 sed 軟件 方法 基本 類結構 抽象類和接口聯系與區別 關鍵字: 抽象類與接口的區別 abstract class和interface是Java語言中對於抽象類定義進行支持的兩種機制,正是由於這兩種機制的存在,才賦予了Java強大的面向對象能
php--strlen()與mb_strlen的作用與區別
encoding 字符串長度 php.ini php odin int 字節數 ring enc 在PHP中,strlen與mb_strlen是求字符串長度的函數PHP內置的字符串長度函數strlen無法正確處理中文字符串,它得到的只是字符串所占的字節數。對於GB2312的
js中slice、splice用法與區別
delet 內容 title pan ont 指定 至少 一個 拷貝 1.slice(start,end)(參數可選) slice() 方法返回一個從開始到結束(不包括結束)選擇的數組的一部分淺拷貝到一個新數組對象。原始數組不會被修改。 var a = [‘a‘, ‘b‘
『cs231n』卷積神經網絡的可視化與進一步理解
都是 lan 精度 輸出 上采樣 一行 ear 模型 運算 cs231n的第18課理解起來很吃力,聽後又查了一些資料才算是勉強弄懂,所以這裏貼一篇博文(根據自己理解有所修改)和原論文的翻譯加深加深理解。 可視化理解卷積神經網絡 原文地址 一、相關理論 本篇博文主要講解201
oracle 之 偽列 rownum 和 rowid的用法與區別
lena select 區別 name 繼續 class 重復 clas 重復數據 rownum的用法 select rownum,empno,ename,job from emp where rownum<6 可以得到小於6的值數據 select rownum,e
DQL、DML、DDL、DCL的概念與區別
刪除對象 null font llb key ros 單行 drop primary ##SQL(Structure Query Language)語言是數據庫的核心語言。 一、DDL (Data Definition Language) 數據庫定義語言 用於創建、