一直想要試試linux系統下,到底是怎麼進行操作的,感覺那些指令行操作一直很酷,但是苦于麻煩,也沒有閑置的電腦,就沒
有用過linux。最近發下win下自動內建了一個簡單的linux系統,感覺給我這樣的新手試試水蠻好的。
WSL的安裝和使用
WSL的安裝
- 第一步是要打開windows系統上關于linux的設定,具體路徑:控制台->程式和功能->啟用或關閉Windows功能->勾選 适用于Linux的windows子系統。
wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 或者也可以打開win+x,以管理者權限運作powershell,運作wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼
指令Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
- 重新開機電腦,確定我們的設定已經生效。
- 打開Microsoft Store,搜尋WSL,選擇一個Linux系統進行安裝就好,我選擇的是
wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 這個大概200多M吧,下載下傳起來還挺快的。wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 - 安裝完成之後,可以點選圖示運作 運作完成,剛開始會進行初始化,可能需要等待2~3分鐘,然後安裝完成之後會提示輸入使用者名以及密碼。注意,這個密碼不是用來登入的密碼,當你要以
wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 權限運作一些指令的時候,會要求輸入這個密碼,是以請記住。這裡我們建立的使用者就是一個一般的使用者,之後我為了調整安裝程式,又更改了wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 賬戶的密碼。wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 - 安裝完成之後就可以用了
WSL的使用
apt安裝源的更改
linux下安裝軟體是從一些網站中直接提取安裝包,然後打開。國外的網站不挂代理的話通路速度感人,國内有一些做的很優秀的鏡像網站,源網站改成這些鏡像網站可以提升下載下傳速度。
- ubuntu下下載下傳東西常用的指令是
,後面的apt install packagename
就是我們要安裝的東西,是以我主要更 換的就是packagename
的安裝源。這裡我們要修改的是apt
檔案,首先要備份一下sources.list
需要注意的就是我們預設進入的sudo cp /ect/apt/sources.list /etc/apt/sources.list.bak
是一個普通使用者,是以要加上Ubuntu
以超級使用者權限執行這個指令,這裡應該會要求你輸入密碼,注意這個密碼就是最開始讓你設定的那個密碼,而且sudo
中的密碼是不回顯的,而且不能通過linux
進行删除,輸錯了隻能重輸。backspace
- 備份完了之後就是對
進行更改了。我下載下傳的source.list
自帶了ubuntu 18.04 LTS
,如果你的不帶vim
的話,需要運作vim
進行安裝(基本上每次使用sudo這個指令,都要輸入密碼,這也是為什麼我最後選擇進入root賬戶進行修改,太麻煩遼).sudo apt-get install vim
- 這裡提一嘴哈,
是一個文本編輯器,基本上相當于win下比較進階的記事本,使用過程中完全不用滑鼠。基本上就是通過鍵盤進行操作。 當你運作了vim
之後,就進入了檔案中,注意,你此時并不是在編輯的環境,而是處于一個要輸入指令的過程,常見的指令:vim
:退出;q
強制退出,放棄修改;q!
:将目前修改寫入檔案中,并退出。然後輸入指令之前,要按一下wq
,注意是英文。 進入編輯界面,按一下:
,就是i
模式,也就是編輯模式,上下左右移動光标,正常輸入即可。 按insert
退出編輯模式,進入指令模式。esc
然後就進入了檔案頁面,将原檔案裡面原來的内容全部注釋掉(在原來的每一行前面加sudo vim /etc/apt/sources.list
),然後添加下面的内容。#
然後修改源檔案後記得寫入退出,也就是deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
指令。 這裡使用的是阿裡的鏡像網站,還有其他的幾個鏡像網站可以選擇,注意,隻用選一個就可以了。 中科大wq
清華deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
網易deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
- 這裡提一嘴哈,
- 修改好了
之後,就要更新軟體清單和軟體源source.list
sudo apt-get update sudo apt-get upgrade
中文顯示的更改
- 首先運作
檢視目前你的語言環境echo $LANG
我這裡已經調整好了,是以顯示的是wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼
,如果你顯示的前面不是zh_CN.UTF-8
,基本上就說明不是中文環境。 更詳細的環境可以通過輸入zh_CN
進行檢視locale
wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 - 這裡我說的中文安裝包都是指的簡體中文哈,因為我自己看簡中,另一個也沒查。 輸入下列代碼安裝中文語言包
然後就會開始下載下傳,更換了sudo apt-get install language-pack-zh-han*
安裝源之後,還是蠻快的。apt
- 下載下傳完成之後,再運作下列代碼運作語言支援
sudo apt install $(check-language-support)
- 接着再修改一下配置檔案就好 先進入配置檔案
然後把其中的内容改成如下内容,原來的内容加vim /etc/default/locale
注釋掉就好#
LANGUAGE="zh_CN:zh" LC_NUMERIC="zh_CN" LC_TIME="zh_CN" LC_MONETARY="zh_CN" LC_PAPER="zh_CN" LC_NAME="zh_CN" LC_ADDRESS="zh_CN" LC_TELEPHONE="zh_CN" LC_MEASUREMENT="zh_CN" LC_IDENTIFICATION="zh_CN" LC_ALL="zh_CN.UTF-8"
- 再修改環境檔案
這裡強調的是不要更改原來的内容,後果我也不知道是啥QAQ,在原内容下面新開一行加入下面的内容vim /etc/environment
LANGUAGE="zh_CN:zh" LC_NUMERIC="zh_CN" LC_TIME="zh_CN" LC_MONETARY="zh_CN" LC_PAPER="zh_CN" LC_NAME="zh_CN" LC_ADDRESS="zh_CN" LC_TELEPHONE="zh_CN" LC_MEASUREMENT="zh_CN" LC_IDENTIFICATION="zh_CN" LC_ALL="zh_CN.UTF-8"
- 最後重新開機一下系統就可以了
reboot
關于 linux
下的中文顯示
linux
這部分是最折騰我的,要了解linux下為什麼我們的cpp檔案裡面的中文沒有辦法顯示,就要首先了解一點檔案編碼方式。
檔案編碼方式的不同
- 在中文的win作業系統下,通常來說含有中文字元的文檔都是以
格式進行編碼的,用記事本打開的話,顯示的就是GBK
ANSI
wsl使用者帳戶沒有必要的權限_第一次使用WSL我做了什麼 - 在
下,系統認得檔案格式是linux
格式utf-8
這兩個格式對于英文字元沒有太大的差別,對于中文字元,在
GBK
格式中,一個字元占2個位元組;但是在
utf-8
格式中,一個字元占3個位元組,是以導緻了中文顯示亂碼。
如何正常檢視中文檔案
- 如果為了能夠在linux下進行顯示和編譯,最友善的方法就是将你的檔案轉化為
格式,用記事本打開檔案,點選另存為,把utf-8
換成ANSI
就好了utf-8
- 如果隻是打開中文檔案檢視不亂碼,可以通過對
的一些設定做到,設定步驟如下:vim
- 打開檔案
sudo vim /var/lib/locales/supported.d/local
- 原有内容不變,添加下列内容
zh_CN.GBK GBK zh_CN.GB2312 GB2312 zh_CN.GB18030 GB18030
- 執行指令,使配置生效
這裡運作完這個指令之後,會進入一個圖形界面,然後第一個就選擇所有區域,第二個選擇sudo dpkg-reconfigure locales
就可以了(選擇其他的中文環境,比如說zh_CN.UTF-8
、zh_CN.GBK
,會導緻zh_CN.GB2312
下中文顯示亂碼,我沒弄懂什麼原因,有大佬可以提點一下嘛)linux
- 打開檔案
sudo vim /etc/vim/vimrc
- 不用更改原檔案内容,在檔案末尾添加
set fileencodings=utf-8,gbk,utf-16le,cp1252,iso-8859-15,ucs-bom set termencoding=utf-8 set encoding=utf-8
打開的中文檔案,裡面的中文字元就可以正常顯示,不管是vim
格式還是GBK
格式utf-8
配置結束
作為萌新,我也就做了這些,就夠我正常上課使用了,但是我在使用過程中遇到了一個問題,不知道怎麼解決。
c++進行格式化輸出的時候,我用的是進行排版的控制 但是由于utf-8中,一個中文等于3個位元組,那麼就是說
cout << setw(20) << "測試用例"
格式中,我的"測試用例"占12個位元組,系統就會輸出8個空格作為格式補齊,但是由于在螢幕上一個中文寬度約等于兩個英文字元的寬度(也就是兩個空格),是以就導緻我的螢幕寬度隻占到了16個英文字元寬度 而我的
utf-8
本來是想要螢幕寬度為20個英文字元,這該怎麼解決呢,或者說用解決嗎?
cout<< setw(20)