色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

IC設(shè)計(jì)中Linux shell的選擇和使用

sanyue7758 ? 來源:ExASIC ? 2023-10-31 11:27 ? 次閱讀

你很可能正在使用bash,也可能是csh。你可能聽說過sh、tcsh。如果你安裝過EDA,就知道某EDA要正常工作必須要裝ksh。另外你可能還聽某大神安利過zsh……

一圖看懂各種shell的聯(lián)系與區(qū)別

那這么多shell有什么聯(lián)系和區(qū)別,我們先來看看它們的歷史和關(guān)系。下圖基于維基百科資料整理:

59b34df6-779c-11ee-939d-92fbcf53809c.jpg

ICer該如何選擇shell

那么這么多shell,我們ICer該如何選擇呢?看以下幾條信息

在現(xiàn)代化的操作系統(tǒng)中,比如Solaris11、RHEL7、Mac OS X默認(rèn)都是bash。

IC企業(yè)里用tcsh的居多,因?yàn)榇蠹以榷荚赟olaris里干活,老版本的Solaris默認(rèn)是csh。

在RHEL6、7里,sh軟鏈接指向bash,csh軟鏈接指向tcsh。

zsh很流行,顏色很好看,自動化功能很強(qiáng)大,特別是Oh My Zsh的擴(kuò)展使用zsh成為了終極shell。可惜的是,很多芯片設(shè)計(jì)公司服務(wù)器沒有安裝,周圍也沒有同事用。

EDA安裝目錄里有ksh腳本,說明有一些IC企業(yè)在用ksh,但國內(nèi)用的人極少。

基于以上的分析,對于普通ICer,我們的結(jié)論是:

如果你是普通搬磚的ICer,有啥用啥,周圍同事用啥你也用啥。所以bash和tcsh都得學(xué)。

如果你是公司的領(lǐng)導(dǎo)(Leader、經(jīng)理、中層管理等),你讓手下用啥,手下就用啥。需要考慮生產(chǎn)力,傳統(tǒng),學(xué)習(xí)培訓(xùn)成本。

在家,你愛用啥用啥,看著舒服,用著順手就行。

另外,由于Tcl、Perl、Python等腳本語言的強(qiáng)大,我們只需要了解和掌握shell的常見、簡單用法即可。把復(fù)雜的編程交給Tcl/Perl/Python去做吧。

shell簡易教程

注釋

1#thisiscomment

用戶配置文件

1#bash
2~/.bashrc
3
4#tcsh
5~/.tcshrc或~/.cshrc
6
7#zsh
8~/.zshrc

腳本第一行指定解釋器

1#!/bin/bash
2#!/bin/tcsh
3#!/bin/zsh

變量定義,賦值,引用

 1#bash
 2CompanyInfo="AIChips,Co.LTD"
 3EDA_HOME=/tools/eda
 4echo$EDA_HOME
 5my_array=(1234)
 6echo${my_array[0]}#outputis1
 7my_hash['first']=1
 8my_hash[second]=2
 9echo${my_hash[first]}
10
11#tcsh
12CompanyInfo="AIChips,Co.LTD"
13setEDA_HOME=/tools/eda
14echo$EDA_HOME
15setmy_array=(1234)
16echo$my_array[1]#outputis1
17
18#zsh
19CompanyInfo="AIChips,Co.LTD"
20EDA_HOME=/tools/eda
21echo$EDA_HOME
22my_array=(1234)
23echo$my_array[1]#outputis1
24decare-Amy_hash
25my_hash['first']=1
26my_hash[second]=2
27echo$my_hash[first]

Tips:

#1 bash數(shù)組下標(biāo)從0開始,tcsh和zsh從1開始。

#2 bash引用關(guān)聯(lián)數(shù)組用${my_hash[first]},tcsh和zsh不需要{},直接$my_hash[first]。

環(huán)境變量

1#bash,zsh
2exportNOVAS_HOME=/tools/eda/synopsys/novas
3或者
4NOVAS_HOME=/tools/eda/synopsys/novas
5exportNOVAS_HOME
6
7#tcsh
8setenvNOVAS_HOME/tools/eda/synopsys/novas

Tips:

#1 tcsh的path數(shù)組只對當(dāng)前shell有效。但如果寫在用戶配置文件~/.tcshrc里,path也是對所有shell有效的。

條件

 1#bash,zsh
 2foo="a"
 3if[$foo="a"];then
 4echo"equal"
 5fi
 6
 7#csh
 8setfoo="a"
 9if($foo=="a")then
10echo"equal"
11endif

Tips:

#1 考慮兼容性,bash、zsh中的字符串比較用=,而tcsh里用==

#2 bash、zsh的[ ]內(nèi)部必須有空格

循環(huán)

 1#bash
 2arr=("a""b""c")
 3for((i=0;i<${#arr[*]};?i++))
 4do?
 5??echo?${arr[$i]}
 6done
 7
 8#tcsh
 9set?arr?=?(a?b?c)
10foreach?i?($arr)
11??echo?$i
12end
13
14#zsh
15arr=("a"?"b"?"c")
16echo?$arr
17for?((i=1;?i?<=?$#arr;?i++))?{
18??echo?$arr[$i]
19}
20for?i?($arr)?{
21??echo?$i
22}

Tips:

#1 數(shù)組長度的表示方式不同,bash里用${#arr[*]}或者${#arr[@]},tcsh和zsh用$#arr

#2 bash用for var in {0..9},tcsh用foreach var ($array),zsh用for var ($array)

函數(shù)

1#bash,zsh
2functionsum(){
3return$(($1+$2))
4}
5sum12
6echo"sum=$?"

Tips:

#1 函數(shù)必須先定義后使用

#2 函數(shù)傳入參數(shù)時,在函數(shù)內(nèi)部用$1, $2, $3等取得

#3 return的返回值保存在內(nèi)置變量$?里

#4 函數(shù)調(diào)用時,參數(shù)直接寫在函數(shù)名后面,與linux命令的格式相同

#5 tcsh不支持函數(shù)的語法,可以用alias實(shí)現(xiàn)類似函數(shù)的功能

下面是tcsh里用alias實(shí)現(xiàn)類似求和函數(shù)sum的例子。alias只是起到簡化代碼的作用,相當(dāng)于宏定義。

1#tcsh
2aliassum'@sum=$a+$b';echo$sum
3seta=1
4setb=2
5sum#outputis3
6setb=10
7sum#outputis11






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • IC設(shè)計(jì)
    +關(guān)注

    關(guān)注

    38

    文章

    1295

    瀏覽量

    103918
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11292

    瀏覽量

    209328
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    365

    瀏覽量

    23356
  • Bash
    +關(guān)注

    關(guān)注

    0

    文章

    57

    瀏覽量

    10179

原文標(biāo)題:IC設(shè)計(jì)中Linux shell的選擇和使用(bash、tcsh、zsh)

文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Linux Shell腳本入門到實(shí)戰(zhàn)詳解

    Linux Shell腳本入門到實(shí)戰(zhàn)詳解
    發(fā)表于 02-17 15:03 ?636次閱讀

    Linux shell腳本分享

    今天浩道跟大家分享幾個Linux運(yùn)維中常用到的shell腳本!
    發(fā)表于 07-18 09:53 ?556次閱讀
    <b class='flag-5'>Linux</b> <b class='flag-5'>shell</b>腳本分享

    Linux Shell系列教程之Shell簡介和類型

    編寫的,Linux占用系統(tǒng)資源最少的一個小shell,它只包含24個內(nèi)部命令,因而使用起來很不方便。cshcsh 是Linux比較大的內(nèi)核,它由以William Joy為代表的共計(jì)4
    發(fā)表于 08-28 13:56

    linux shell命令/unix shell命令教程

    linux shell命令/unix shell命令教程:為了防止未授權(quán)用戶訪問你的文件,可以在文件和目錄上設(shè)置權(quán)限位。還可以設(shè)定文件在創(chuàng)建時所具有的缺省權(quán)限:這些只是整個系統(tǒng)安全問題中
    發(fā)表于 12-06 13:08 ?61次下載
    <b class='flag-5'>linux</b> <b class='flag-5'>shell</b>命令/unix <b class='flag-5'>shell</b>命令教程

    米爾科技Linux Shell編程介紹

    Shell是用戶與內(nèi)核進(jìn)行交互操作的一種接口,是Linux最重要的軟件之一。
    的頭像 發(fā)表于 11-25 08:58 ?1638次閱讀
    米爾科技<b class='flag-5'>Linux</b> <b class='flag-5'>Shell</b>編程介紹

    Linuxshell腳本執(zhí)的4種方式

    Linuxshell腳本的執(zhí)行通常有4種方式,分別為工作目錄執(zhí)行,絕對路徑執(zhí)行,sh執(zhí)行,shell環(huán)境執(zhí)行。
    發(fā)表于 05-23 09:28 ?916次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>中</b><b class='flag-5'>shell</b>腳本執(zhí)的4種方式

    Linux系統(tǒng)命令及shell腳本實(shí)踐指南

    Linux系統(tǒng)命令及shell腳本實(shí)踐指南資料下載。
    發(fā)表于 06-01 14:47 ?28次下載

    Linux開發(fā)_Shell腳本編程語言

    介紹LinuxShell編程,介紹shell里語句、變量、函數(shù)、運(yùn)算符的使用。
    的頭像 發(fā)表于 09-17 15:39 ?1185次閱讀

    Linux命令行與shell腳本編寫

    Linux命令行與shell腳本編寫
    發(fā)表于 01-11 16:50 ?4次下載

    Linux基礎(chǔ)知識Shell

    Shell便是Linux命令行環(huán)境CLI,直觀意思是“外殼”,這一點(diǎn)與Linux內(nèi)核對應(yīng)。
    的頭像 發(fā)表于 02-15 10:54 ?822次閱讀

    shell命令和linux命令一樣嗎

    結(jié)合在一起,形成一個相當(dāng)于面向過程的程序,即shell script,從而實(shí)現(xiàn)一些復(fù)雜的功能。 而Linux命令則是用來對Linux系統(tǒng)進(jìn)行管理的命令。這些命令通常是由系統(tǒng)管理員或用戶輸入的,用于執(zhí)行特定的操作或任務(wù)。
    的頭像 發(fā)表于 11-08 10:51 ?2864次閱讀

    linux命令和shell編程有什么聯(lián)系

    的命令,并提供了許多功能和特性,如變量、控制結(jié)構(gòu)、函數(shù)等,這些功能和特性使得Shell編程成為可能。 其次,Linux命令是Shell編程的重要組成部分。通過使用Linux命令,用戶可
    的頭像 發(fā)表于 11-08 10:53 ?920次閱讀

    linux命令行與shell編程實(shí)戰(zhàn)

    Linux命令行與Shell編程實(shí)戰(zhàn)主要涉及以下內(nèi)容: Linux命令行基礎(chǔ):學(xué)習(xí)Linux命令行的基本操作,如文件管理、進(jìn)程管理、網(wǎng)絡(luò)配置等。熟悉使用命令行能夠提高工作效率,提升自己
    的頭像 發(fā)表于 11-08 10:57 ?764次閱讀

    Linux系統(tǒng)shell命令解析

    shellLinux系統(tǒng)的用戶界面,提供了用戶與內(nèi)核交互的一種接口,它接收用戶輸入的命令并到送到內(nèi)核去執(zhí)行,因此也被稱為Linux的命令解釋器。
    的頭像 發(fā)表于 11-05 15:40 ?222次閱讀

    Linux從零到精通:最簡單的Shell腳本入門教程

    在數(shù)字化時代的浪潮Linux操作系統(tǒng)憑借其高效、穩(wěn)定、開源的特性,成為了無數(shù)開發(fā)者和系統(tǒng)管理員的首選。 而在Linux的龐大生態(tài)系統(tǒng)Shel
    的頭像 發(fā)表于 12-05 09:56 ?393次閱讀
    <b class='flag-5'>Linux</b>從零到精通:最簡單的<b class='flag-5'>Shell</b>腳本入門教程
    主站蜘蛛池模板: 欧美一区二区三区播放| 99re在这里只有精品| 曰本少妇高潮久久久久久| 伊人久久精品AV无码一区| chinese东北夫妻video| japanese from色系| 麻豆免费观看高清完整视频在线| 热综合一本伊人久久精品| 香蕉视频国产精品| 2017必看无码作品| 国产女人91精品嗷嗷嗷嗷| 久久这里有精品| 手机在线免费观看毛片| 92电影网午夜福利| 久久99热只有频精品| 日本肉肉口番工全彩动漫| 70岁妇女牲交色牲片| 久久亚洲欧美国产综合| 亚洲免费在线| 国产不卡视频在线观看| 国产亚洲精品看片在线观看| 青青草国拍2018| 4虎影院午夜在线观看| 色www.亚洲免费视频| 丹麦1o一19sex性hdhd| 欧美日韩精品一区二区三区高清视频 | 亚洲精品久久久久中文字幕二区| 99久久99久久免费精品蜜桃 | 攻把受做哭边走边肉楼梯PLAY| 免费一级特黄欧美大片久久网| 在线观看免费av网| 精品人妻伦一二三区久久AAA片| 午夜家庭影院| 国产看黄网站又黄又爽又色| 玩弄朋友娇妻呻吟交换电影| 国产精品高清在线观看93| 桃花色影院| 国产在线高清视频无码| WWW婷婷AV久久久影片| 色就色 综合偷拍区欧美| 久久这里只有热精品18|