.Net程式員學習Linux(一)

来源:http://www.cnblogs.com/androidshouce/archive/2016/06/12/5576479.html
-Advertisement-
Play Games

本次知識點:Linux系統的多終端切換,linux下的用戶,linux遠程訪問工具使用,linux下重要的目錄,命令的組成,通配符,linux的路徑問題,文件操作的綜合運用 為什麼學習linux? 1.很多人都說.net程式員只會在Windows的環境下進行工作,壓根就不懂Linux的使用,也不懂L ...


本次知識點:Linux系統的多終端切換,linux下的用戶,linux遠程訪問工具使用,linux下重要的目錄,命令的組成,通配符,linux的路徑問題,文件操作的綜合運用

為什麼學習linux?

1.很多人都說.net程式員只會在Windows的環境下進行工作,壓根就不懂Linux的使用,也不懂Linux的命令,只會用滑鼠,只會在圖形界面下工作.其實剛開始聽,心裡挺不爽的,作為一個.net程式員,我所熟悉的當然是在windows下工作,因為我們壓根不需要在linux環境使用編碼工具,而且很多php和java的程式,他們也僅僅是會一點點命令,就來鄙視我們,說不懂linux,當時我心裡是挺不爽的,你們接觸得過,懂是當然的,不懂才怪,為了不被鄙視,我也要接觸linux,更要比他們更加熟悉。

2.Linux時代的到來,隨著微軟開源.net,勢必會把.net遷移到多個平臺上,linux因為其免費開源的特征,很多公司未來將會把伺服器的操作系統搭建為linux,並且會把.net平臺遷移到該平臺上,所以.net程式員學習linux是勢在必行了,為了不被時代拋棄,那麼自己就必須進步,把linux當作工作的一部分,那麼自己學習起來就不費勁了.

 

開始學習linux

準備linux系統,我安裝了VMware的虛擬機軟體,傻瓜式的安裝了CentOS6.7的操作系統,關於選擇Linux系統版本的問題,我主要是看當前公司搭建伺服器選擇的linux版本,以及學習的成本來著想,最終選擇了CentOS.

 

Linux系統的多終端與切換

所謂多終端,按我的理解,就是多個用戶,不同用戶有不同的環境,大家相互不影響.因為我安裝的CentOS6.7,所以一進去就是圖形界面.

CentOS共有6個終端,圖形界面這裡也是其中一個終端,對應為鍵盤中的F1,另外5個對應這F2~F6,都是控制台終端

註意:如果從圖形界面進入控制台終端,快捷鍵為:Ctrl+Alt+(F1~F2),如果從控制台進入其餘終端,只需要按Alt+F1~F6,(我不知道是不是安裝這個虛擬機的問題,才需要按Ctrl)

 

Linux終端的帳號密碼

我不知道我這樣理解準不准確,反正超級管理員都是root,密碼就是安裝時填上的密碼,當然linux還有其他的用戶,

 

Linux如何使用命令(小白專用)

對於一名小白來說...可能安裝Linux後,進入了圖形界面 ,在哪裡敲命令都不知道....(我曾經就是...)我選擇了快捷鍵Alt+F2進入終端,然後輸入帳號密碼進入了系統,

 

 

使用工具遠程連接Linux系統

使用secureCRT,可以在Window下遠程連接Linux.下載下來之後,通過授權後(請使用正版=_=!),進入到界面中

在菜單欄-->File-->Quick Connet-->選擇SSH2,填寫Hostname(地址,不知道虛擬機IP的,在 linux下命令行ifconfig),UserName:root,--->點擊Connect--->輸入密碼就可以了

最後出現界面

這裡就相當於終端的控制台了,如果覺得白底不好看,不像linux下的,那麼可以點解session找到對應要連接的linux終端,右鍵properties,進入選項,在Terminal-->Emnulation  -->下拉框選擇Linux主題就變成linux的了,

把字體變大:Ctrl+滑鼠滾輪

     選擇Send Protocol  NO-OP 防止連接伺服器的終端被清掉.

使用了遠程管理工具後,就和在linux使用終端的命令行是一樣的,所以之後都是直接用這個遠程管理工具sucureCRT.

 

Linux重要目錄

ls命令後,顯示為藍色的則為目錄,顯示為白色的為文件,綠色代表可執行文件,淺藍色的代表符號鏈接

有很多重要的目錄:

bin:有一堆命令

etc:裡面存放的是一些重要的配置文件,linux一些配置的,什麼網路環境都在這裡存放

proc:虛擬目錄,系統運行過程中產生的一些文件,通過裡面的內容瞭解系統內部情況,相當於系統開了一個視窗讓你去看系統內一些內部信息

sbin:也是存放命令的,只是它是保存一些比較底層接近物理操作的命令,例如什麼關機開機,修改系統時間等等,涉及到一些物理硬體的操作,但是需要的許可權較高,

home:主工作目錄, 相當於登錄者的一個基地,每個用戶都有自己的主工作目錄,如果是root用戶,則是在/根目錄下的root文件中

 

命令的組成

每個命令行的顯示的組成:,如果是普通用戶是$,root則是#    如果是在[圖中標的當前所處目錄]顯示為~,則表示進入到當前主工作目錄

 

 

查看命令使用手冊

使用man commond 就可以調出命令的手冊,按F可以下一頁,按B可以上一頁,按Q可以退出命令手冊

 

linux基本命令(以後每節都會持續更新)

adduser username 添加新的用戶

passwd username 修改用戶密碼    

su username  使用username用戶登錄終端    

 date 當期系統的日期  

hwclock 硬碟的時鐘

clear  清除屏幕上的信息

cal   日曆  

who  當前誰線上  

uname  當前系統的信息  

top 查看那當前啟動的任務,系統動態的信息,可以監控系統的負荷  

shutdown now  馬上關機,如果沒有now則是等待所有用戶logout才能被關掉  

logout 退出當前的用戶,但是不關機  

pwd查看當前所在目錄  

----------以下命令對文件的操作----

 

echo  content >   directory/filename  表示如果打開fliename則輸出content,  ">"代表輸出重定向,如果沒有則直接在屏幕中輸出content    

touch  filename  創建一個0位元組的文件,如果touch一個已經存在的文件,那麼就會改變這個文件最後的打開時間戳  

chown newuser /directory/filename 更改文件的擁有者,就是ls -l看到的那個擁有者, 第三個參數需要帶上路徑  

chgrp newuser /directory/filename  更改擁有者組

 ls list列出當前打開目錄的文件或者子目錄

 cat catalog 打開文件或者打開目錄 

 rm remove 刪除文件或者文件目錄

mv move 移動目錄或者改文件名 

cp copy 複製文件

mkdir make directory 創建目錄

cd change directory 改變當前目錄

rmdir remove directory 刪除目錄

使用ls -l 列出詳細目錄或者以及其詳細信息

 

使用通配符

*:代表在其所在位置上有0或以上任意個字元

?:代表在其位置上僅有一個任意字元

[]:在其位置上,有[]中任意的字元集 ,如果是連續的可以寫成[1-9][a-z][a-zA-Z]

純字母:例如,寫成a?那麼在第一個必須匹配a

 

         

 

 

 

Linux下的文件目錄與路徑

所有文件都是從根目錄/開始.

路徑的表示有:相對路徑 和 絕對路徑   例子:相對路徑:我要訪問K---->cd /a/e/k      絕對路徑:我當前處於g 但我要訪問h ----> cd ../../d/h

作為一個程式員,大家也知道什麼是絕對路徑和相對路徑的了,

 

文件操作的綜合運用

先預設一下命名防止混亂: text表示內容,file開頭的表示文件,directory開頭的表示目錄

 創建一個文件:  [root@localhost ~]# echo text > /root/filea  --->表示在root目錄下,創建一個filea文件,如果打開該文件,則會輸出text

打開一個文件:[root@localhost ~]# cat filea-->因為現在已經處於root目錄下,所以直接使用cat打開文件filea

返回主工作目錄:直接輸入cd 即可

更改文件名字: [root@localhost ~]# mv filea fileb    --->使用mv改名   mv 動作 第一個參數:原文件名,可以帶路徑的  第二個參數,需要改的名字

複製一個文件:[root@localhost ~]# cp fileb filec  ---->適用cp進行文件複製, cp動作  第一個參數:原文件的名字,可以帶路徑的 第二個參數,把原文件複製成 目錄下的某個文件名 

創建一個目錄:[root@localhost ~]# mkdir directory1   ---->創建文件目錄mkdir  直接在當前目錄創建一個名為directory1的文件夾,如果要在其他路徑創建那麼就帶上路徑

移到一個文件到目錄中:[root@localhost ~]# mv fileb directory1     ----->mv就是移動文件 , 如果第二參數參數是一個目錄,那麼就是移動到該目錄下,如果不是目錄,則是改名了

如果一個目錄中不存在文件夾,如何創建:[root@localhost ~]# mkdir -p directory2/directory3    ----->directory2如果這個目錄不存在,普通mkdir不帶參數的,是不能創建的,如果帶參數-p就可以創建了

刪除文件:[root@localhost directory3]# rm file333    --->會提示 rm: remove regular file `file333'?  如果刪除則填入Y ,不刪除則N

修改文件rwx的許可權:[root@localhost ~]# chmod a+x filec   ---->使用chmod 命令   a+x 則是user,group,othor的許可權都修改  a的含義就all  x就是對應的可執行的許可權,也可以是r或者w

         [root@localhost ~]# chmod a-x filec     ---->就是刪除x的許可權

         [root@localhost ~]# chmod u+x filec     ---->a換成了u就是針對user的許可權了,分別對應首字母

 硬鏈接,就是把一個子文件共用給另外的目錄上: [root@localhost ~]# ln directory1/fileabc dirctory3    ---->把directory1中的fileabc文件鏈接給directory3,所以在3也能打開fileabc,相當於程式中高類聚,修改了fileabc,同時兩個目錄下讀到的都是修改後的內容,相當於多個老爸,雖然修改的了之後,兩個老爸都能共用到,但是其中一個老爸被刪除了,但是另外一個老爸還是可以讀到文件的信息,如果要刪除的話,就只能兩邊都刪除

創建一個鏈接指向別的目錄或者文件:[root@localhost directory1]# ln -s ../directory2/directory3 link   ----->ln -s 指向另外一個目錄或者文件,實現快速打開,只需要ls link 就測試link是否指向了不同的目錄

 

只是上了一些課程,對操作的總結,linux作為一個操作系統當然是博大精深拉,以後的路還長著,但是對於文件的管理已經有了一個基本的認識了.

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 所有可能的設置:新建一個文件夾,將它命名為“some_name.{ED7BA470-8E54-465E-825C-99712043E01C}”,打開就是這臺電腦的所有設置視窗【所有的設置視窗都在桌面的文件夾里】 雙擊鎖住電腦:在桌面上新建一個快捷方式,在鍵入項目的地址上輸入“rundll32.exe ...
  • Let's Encrypt是一個免費SSL證書發行項目,發行的證書已經獲得主流瀏覽器的支持,親測谷歌瀏覽器(桌面版)、火狐瀏覽器(桌面版)、UC瀏覽器(手機版)、360瀏覽器(手機版)支持,其它的暫沒測試; 本文講解如何使用Let's Encrypt獲得免費SSL證書,配置apache的SSL功能, ...
  • 源內容:http://www.cnblogs.com/shouce/p/5558095.html#undefined 下麵的內容是根據“源內容”進行了整改、補充。 三種方式實例化一類,包括無參數構造形式與有參數構造形式性能測試。 測試環境: 1) Visual studio 2015 Communi ...
  • 先收藏,後看;千萬不要做一個屯書的人,一定要堅持有選擇性的看下去; 資料庫類 資料庫類 SqlServer Oracle .NET 更多... .NET 更多... Web 更多... Web 更多... 架構 架構 不颳了,直接可以看到了。 鏈接: http://pan.baidu.com/s/1 ...
  • 近期都在處理淘寶商品數據包識別問題,滿以為CSV文件就是以行為分割,以逗號為欄位分割的文件體系。 自己在編寫處理程式時,增加了2個參數: 第一個,字元集,第二,告知處理方法,文件的列在第幾行。 同時,對某些生成出來的數據包不規據的,例如生成出2個同名列的,等等文件,做了一定的容錯。 滿以為這樣就OK ...
  • 前言 在前一篇文章中我已經做過開篇,接下來的隨筆會詳細講一下我們的開發框架是如何實現的,專業的事由專業的人來講,以後就由我們的高級碼農小李英文名查爾斯和他的師父廠長(因為姓陳,酷愛攝影,我們的文藝片都是從他那裡來的,所以叫廠長) 技術選型 “查爾斯,這個敏捷開發框架我們要開始做了,給你分點任務,你要 ...
  • 這篇教程將告訴你如何使用 Visual Studio 2015 構建一個 ASP.NET Core MVC Web 應用程式的基礎知識。 ...
  • OO思想現在已經在軟體開發項目中廣泛應用,其中最重要的一個特性就是繼承,最近偶簡單的複習了下在C#中涉及到繼承這個特性時,所需要用到的關鍵字,其中有一些關鍵點,特地整理出來,方便大家查閱。 一、在C#中,new這個關鍵字使用頻率非常高,主要有3個功能: a) 作為運算符用來創建一個對象和調用構造函數 ...
一周排行
    -Advertisement-
    Play Games
  • .Net8.0 Blazor Hybird 桌面端 (WPF/Winform) 實測可以完整運行在 win7sp1/win10/win11. 如果用其他工具打包,還可以運行在mac/linux下, 傳送門BlazorHybrid 發佈為無依賴包方式 安裝 WebView2Runtime 1.57 M ...
  • 目錄前言PostgreSql安裝測試額外Nuget安裝Person.cs模擬運行Navicate連postgresql解決方案Garnet為什麼要選擇Garnet而不是RedisRedis不再開源Windows版的Redis是由微軟維護的Windows Redis版本老舊,後續可能不再更新Garne ...
  • C#TMS系統代碼-聯表報表學習 領導被裁了之後很快就有人上任了,幾乎是無縫銜接,很難讓我不想到這早就決定好了。我的職責沒有任何變化。感受下來這個系統封裝程度很高,我只要會調用方法就行。這個系統交付之後不會有太多問題,更多應該是做小需求,有大的開發任務應該也是第二期的事,嗯?怎麼感覺我變成運維了?而 ...
  • 我在隨筆《EAV模型(實體-屬性-值)的設計和低代碼的處理方案(1)》中介紹了一些基本的EAV模型設計知識和基於Winform場景下低代碼(或者說無代碼)的一些實現思路,在本篇隨筆中,我們來分析一下這種針對通用業務,且只需定義就能構建業務模塊存儲和界面的解決方案,其中的數據查詢處理的操作。 ...
  • 對某個遠程伺服器啟用和設置NTP服務(Windows系統) 打開註冊表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer 將 Enabled 的值設置為 1,這將啟用NTP伺服器功 ...
  • title: Django信號與擴展:深入理解與實踐 date: 2024/5/15 22:40:52 updated: 2024/5/15 22:40:52 categories: 後端開發 tags: Django 信號 松耦合 觀察者 擴展 安全 性能 第一部分:Django信號基礎 Djan ...
  • 使用xadmin2遇到的問題&解決 環境配置: 使用的模塊版本: 關聯的包 Django 3.2.15 mysqlclient 2.2.4 xadmin 2.0.1 django-crispy-forms >= 1.6.0 django-import-export >= 0.5.1 django-r ...
  • 今天我打算整點兒不一樣的內容,通過之前學習的TransformerMap和LazyMap鏈,想搞點不一樣的,所以我關註了另外一條鏈DefaultedMap鏈,主要調用鏈為: 調用鏈詳細描述: ObjectInputStream.readObject() DefaultedMap.readObject ...
  • 後端應用級開發者該如何擁抱 AI GC?就是在這樣的一個大的浪潮下,我們的傳統的應用級開發者。我們該如何選擇職業或者是如何去快速轉型,跟上這樣的一個行業的一個浪潮? 0 AI金字塔模型 越往上它的整個難度就是職業機會也好,或者說是整個的這個運作也好,它的難度會越大,然後越往下機會就會越多,所以這是一 ...
  • @Autowired是Spring框架提供的註解,@Resource是Java EE 5規範提供的註解。 @Autowired預設按照類型自動裝配,而@Resource預設按照名稱自動裝配。 @Autowired支持@Qualifier註解來指定裝配哪一個具有相同類型的bean,而@Resourc... ...