Linux系統使用

来源:https://www.cnblogs.com/weigaojie/archive/2019/03/07/10491320.html
-Advertisement-
Play Games

linux(操作系統的內核) 瀏覽器功能:(內核的解釋) 各個瀏覽器 實現的方式不一樣 呈現內容 //解析內容和樣式 用—webkit— (內核)解析 實現交互邏輯 v8 引擎 (內核) 實現 => 解析 JS 的引擎 //除了IE 都在用 進行數據傳遞(上網) 用chrome net 引擎 (內核 ...


linux(操作系統的內核)

瀏覽器功能:(內核的解釋)

各個瀏覽器 實現的方式不一樣

  1. 呈現內容 //解析內容和樣式 用—webkit— (內核)解析

  2. 實現交互邏輯 v8 引擎 (內核) 實現 => 解析 JS 的引擎 //除了IE 都在用

  3. 進行數據傳遞(上網) 用chrome net 引擎 (內核) 實現

基於linux內核的一種發行系統 -------ubuntu 烏邦圖(天下共用,連接每一個人)

 

命令

bin    重要的二進位應用程式  含有所有  ubuntu 的命令

cd /         跳轉到根目錄
cd ../../       跳轉到上上層目錄
cd - 回到最近一次跳轉的目錄

ls           查看
man ls 查看命令能跟的參數及功能 (這個是查看 ls 的)
ls -a   查看所有文件夾(查看隱藏文件// 比如說被預設的系統文件)
ls -l     查看所在文件的詳細信息

which ls       找到命令所在位置 ls               找不到的就在超級管理員的sbin中
pwd   查看當前在哪個目錄下

         
/etc           配置文件(系統的) 安裝之後
/usr 配置文件(用戶自己的)
/boot 系統啟動的文件
/lib           整個系統的核心文件 (函數庫,所有命令真正的運行程式)
/lost+found     系統臨時文件夾     不要動
/proc     process(進程)   不要動     進程運行時候產生的臨時文件
/sys 跟 /proc 相似
/run 系統運行時產生的臨時文件的存放處   不要動
/media 管理著一些移動設備
/mnt 掛載(mounted)文件系統
/opt 應用程式預設安裝的文件夾
/root 超級管理員運行的內容
/sbin 超級管理員可以運行的命令
/tmp 臨時文件夾 所有用戶都能操作

 

文件操作


echo 1 輸出 1
echo hello > "1.txt" 創建文件
cat 1.txt 打開 1.txt 文件   Tab 鍵補全
echo 456 >> 1.txt 追加進1.txt
gedit 1.txt ubuntu特有的編輯器  
touch 1.txt 創建 (村在的話就不創建)

 

目錄操作


mkdir a 創建目錄
rmdir a 刪除目錄(只能刪除空目錄)
rmdir -p a/b/c 刪除目錄(刪的都是空目錄,c是空的 刪完c,b是空的, 刪完b,a是空的)

 

 


- man ls   查看ls所有參數,f跳轉單頁,q跳出此頁面,回到命令行
- witch ls   查看命令所在位置
- pwd   查看當前目錄
- clear 清空屏幕
- echo 輸入
- echo 123 > 1.txt   保存文件
- cat 1.txt   查看文件
- echo 456 >> 1.txt   追加文件
- gedit 1.txt     gidit 編輯器(ubuntu環境)
- ifconfig   查看地址
- vim 編輯器
 - :wq 保存退出
 - i   寫
 - dd 刪除
- touch 2.txt (若存在則不創建)

 

刪除


- d 文件夾   -文件
- rm -rf   刪除任何目錄
- rm 1.txt 刪除文件
- rm *.txt 所有
- mkdir   a   創建目錄
- mkdir -p a/b/c       創建帶層級的空目錄
- rmdir   a     刪除空目錄
- rmdir   a/b/c     只能刪除c
- rmdir -p   a/b/c   刪除帶層級的空目錄

 

剪切複製


- mv   a   aaa   (移動剪切;重命名)
- mv a documents/
- move a ../
- move a ../c/b   把a從當前文件夾移動到c文件夾,並改名為b
- cp   1.txt   2.txt   (拷貝文件copy)
- cp   a   -r   b   (拷貝目錄)
- history 查看歷史命令c'd

 

 

鏈接


ln -s a.txt b.txt     //軟鏈接 有-s 常用 不占磁碟空間 只是做了個鏡像
一變全變
ln a.txt c.txt       //硬鏈接 沒有-s   相當於拷貝一份,只是內部建立聯繫 不能做文件夾!

ln -s /home/wangwei/a/1.txt /home/wangwei/project/2.txt     把1.txt和2.txt鏈接起來

 

查找


find ngi*     查找文件
 

sudo find ngi* | grep con     #從ngi* 的文件中 查找 con 內容
grep a *.txt #從 *.txt 中找包含a的內容


ps(process) 進程
ps -aux | grep 14824       #從ps -aux 中找14824內容

 

文件的解壓縮


先打包文件夾     打包後為文件
tar(target)-c(create) v(view) f(file)
tar -cvf b a    
解包
tar -xvf b -C c   把b解壓到c中 必須加 -C


打包文件
tar -cvf aaa a.txt
解包
tar -xvf aaa -C ../b


壓縮
壓縮需先打包
-z :gzip     -j :bz2
tar -zcvf/-jcvf b a     把a包壓縮成b

解壓
tar -zxvf b -C c   把b解壓到c中


zip壓縮
zip dest source

zip解壓
unzip dest

 

文件的傳輸


用戶名 地址   用戶文件
http
ftp

ssh     (secure shell ) git基於ssh協議

(socket =>埠)

netstat -apt | grep 22 查看埠號

PSCP.exe , 配置環境變數Path

scp
scp -r (文件夾)

scp -r a [email protected]:/home/wangwei         完事
scp -r [email protected]:/home/wangwei/a -r a

 

磁碟管理


du           看文件夾中的使用信息
df -h         查看磁碟

 

網路通訊


net
host (localhost)
sudo ifconfig eth@ 修改後的ip


訪問視頻
udp協議


上網瀏覽  
tcp協議

netstat -aup     查看所有(a)使用udp(u)協議的軟體使用埠(p)的信息
netstat -atp     查看所有(a)使用tcp(t)協議的軟體使用埠(p)的信息

 

軟體安裝


sudo apt-get update         先更新軟體庫   添加完再更新
sudo apt-get install mysql-server mysql-client           ubuntu安裝程式

sudo add-apt-repository ppa:webupd8team/java     添加包地址,ppa:個人軟體包檔案
sudo add-apt repository packagename


sudo apt-get update   升級軟體包
sudo apt-get upgrade   把命令升級

ps -aux | grep mysql   查看是否啟動

 

源碼安裝


user/bin/python         用戶自己加的應用可以運行的bin

wget url     下載包↓
找到configrue
./configure --prefix=/opt/python3.7.0     把configure生成配置項 所放到的地方
[--endable-optimizations]
make all     編譯
sudo make install   安裝    

多版本優先順序切換
sudo update-alternatives --install /usr/bin/python3 python3 /opt/Python3.7.0/bin/python3.7 500

update-alternatives --install link name path [--slave link ]

進程


ctrl+z 掛起
fg %1 調回

 

刪除


apt-get --purge remove mysql-server 卸載軟體,包括配置文件
apt-get autoremove mysql-server     刪除依賴包
sudo apt-get clean && sudo apt-get autoclean   清理無用的包 &&同時運行兩個命令

 

 

mysql使用命令


sudo apt-get install mysql-server mysql-client           ubuntu安裝程式

1.終端啟動MySQL:/etc/init.d/mysql start;

2.登錄MySQL:mysql -uroot -p (用root賬戶登錄),然後輸入密碼;

3.查看所有的資料庫名字:show databases;

4.選擇一個資料庫操作: use database_name;

5.查看當前資料庫下所有的表名:show tables;

6.創建一個資料庫:create database database_name;

7.刪除一個資料庫:drop database database_name;

8.創建一個表: create table mytest( uid bigint(20) not null, uname varchar(20) not null);

9.刪除一個表: drop table mytest;

10.SQL插入語句:insert into table_name(col1,col2) values(value1,value2);

11.SQL更新語句:update table_name set col1='value1',col2='value2' where where_definition;

12.SQL查詢語句:select * from table_name where.......(最複雜的語句)

13.SQL刪除語句:delete from table_name where...

14.增加表結構的欄位:alert table table_name add column field1 date ,add column field2 time...

15.刪除表結構的欄位:alert table table_name drop field1;

16.查看表的結構:show columns from table_name;

17.limit 的使用:select * from table_name limit 3;//每頁只顯示3行
select * from table_name limit 3,4 //從查詢結果的第三個開始,顯示四項結果。 此處可很好的用來作分頁處理。

18.對查詢結果進行排序: select * from table_name order by field1,orderby field2;多重排序

19.退出MySQL:exit;

20.刪除表中所有數據: truncate table 數據表名稱 (不可恢復)

 

設備操作

關機


halt           立刻關機
poweroff       立刻關機
shutdown -h now     立刻關機(root用戶使用)
shutdown -h 10       10分鐘後自動關機

 

重啟


reboot      
shutdown -r now
shutdown -r now 10
shutdown -r 20:35
shutdown -c 取消重啟

 

進程


ps -aux   顯示所有包含使用者的進程 all user x進程
top         動態顯示所有進程
sudo kill 進程號     殺死進程
sudo kill -9 進程號     殺死所有進程

都殺不了 就是守護進程
守護進程路徑:cd /etc/init.d/   到這查找
sudo /etc/init.d/mysql stop 停止守護進程
sudo /etc/init.d/mysql start 開始守護進程
sudo /etc/init.d/mysql restart 重啟守護進程

 

pycharm


idea.lanyus.com   獲得破解碼
獲得破解碼後
在vim /etc/hosts
加 0.0.0.0 account.jetbrains.com

 

用戶、組


whoami       看現在是誰在登錄
who         看有多少人在操作(都有誰)

su first       切換用戶

創建新用戶
sudo useradd -m first   -m是同時創建目錄
cat /etc/passwd   查看first 是否創建成功
sudo passwd first         設置密碼
用windows登陸就會顯示兩個用戶登錄   first不能用sudo   只有原著民能用sudo

usermod   修改用戶信息
-d   //sudo usermod first -d /home/first/demo   指定登錄目錄



刪除前先退出   exit   (從windows中退出)
sudo userdel -f first   刪除用戶


sudo groupadd demo     創建組    

cat /etc/group         查看組
cat /etc/passwd         查看用戶
groups first           查看用戶是屬於哪個組的
useradd aaa -g abc     創建aaa用戶直接指定屬於abc組(組要存在)
useradd aaa -G bbb       -G 追加 創建aaa用戶既屬於abc組,也屬於bbb組(組要存在)
sudo usermod first -g demo     把first放入demo組
sudo usermod first -Gdemo     first既屬於first組,也屬於demo組
  demo 為主組  
sudo usermod first -G demo   把first和demo交換 first為主組

sudo gpasswd -d first demo     把first從demo中刪除(不能從主組刪除)
sudo gpasswd -a first demo     把first追加到demo

刪除組
sudo groupdel demo     把demo組刪掉
cat /etc/group       查看刪除結果

sudo groupmod demo -n demo 修改組名

sudo usermod -a -G sudo first   讓first有sudo許可權(放到sudo組中)
sudo usermod -a -G adm first     讓first有adm許可權(放到adm組中)

 

許可權

  • -為文件 d為文件夾

    • w 寫入 文件/改變刪除文件 文件夾/增加刪除文件

    • r 讀取 文件/讀取文件數據 文件夾/查看文件夾內部都有什麼

    • x 執行 文件/執行該程式 文件夾/列出該文件中內容的詳細信息

  • sudo chown -R first:first aaa 改變文件夾的擁有者 -R 遞歸,文件夾中的內容的擁有者都改變

  • 更改文件許可權

    • sudo chmod u=rwx ,g=rwx ,o=rwx ccc.txt (在原著民的許可權下改)

    • chmod -R 666 ccc.txt 1-->x 2-->w 4-->r 3-->xw 5-->rx 6-->wr 7-->wrx

 

執行

  • 在vim內部寫 #!/user/bin/env pyhton, 自動執行python

 

 

搭建伺服器


from flask import Flask,render_template #渲染html(flask中)
import pymusql

app=Flask(__name__)


@app.route("/")     #訪問根目錄的話會↓ 返回到“index.html”
def index():
    db = pymysql.connect(host="localhost",
                        user="root",
                        password="9264",
                        db="wangwei",
                        charset="utf8")
   cur = db.cursor()
   cur.execute("select * from stu")
   result = cur.fetchall()         #把資料庫中的數據全部拉取出來
   return render_template("index.html",result=result)    #需要上面的render_template
#result 只能被{{}}識別 邏輯{%%}

 

flask 中規定 靜態文件(css,js等)必須要放到static目錄中 因為是預設的路徑 所以要新建static文件 /static


<link rel="style" herf="/static/index.css">

{{data}}
{% for item in data %}
<li></li>
{% endfor %}

if(result):


res=make_response(redirect("/"))

res.set_cookie("login","yes")

return res

else:


return redirect("/login")

 

session

 

 

 


sudo apt-get install mysql-server mysql-client           ubuntu安裝程式

1.終端啟動MySQL:/etc/init.d/mysql start;

2.登錄MySQL:mysql -uroot -p (用root賬戶登錄),然後輸入密碼;

3.查看所有的資料庫名字:show databases;

4.選擇一個資料庫操作: use database_name;

5.查看當前資料庫下所有的表名:show tables;

6.創建一個資料庫:create database database_name;

7.刪除一個資料庫:drop database database_name;

8.創建一個表: create table mylist(
-->id int(10) auto_increment primary key,
                                              自增           組件
                          -->name varchar(255),
                          -->age varchar(10),
                          -->sex varchar(10))default charset=utf-8;
9.刪除一個表: drop table mytest;

10.SQL插入語句:insert into table_name(col1,col2) values(value1,value2);

11.SQL更新語句:update table_name set col1='value1',col2='value2' where where_definition;

12.SQL查詢語句:select * from table_name where.......(最複雜的語句)

13.SQL刪除語句:delete from table_name where...

14.增加表結構的欄位:alert table table_name add column field1 date ,add column field2 time...

15.刪除表結構的欄位:alert table table_name drop field1;

16.查看表的結構:show columns from table_name;

17.limit 的使用:select * from table_name limit 3;//每頁只顯示3行
select * from table_name limit 3,4 //從查詢結果的第三個開始,顯示四項結果。 此處可很好的用來作分頁處理。

18.對查詢結果進行排序: select * from table_name order by field1,orderby field2;多重排序

19.退出MySQL:exit;

20.刪除表中所有數據: truncate table 數據表名稱 (不可恢復)

 

 

 

python3 -m venv abcd

cd abcd

source bin/activate

which python3

deactivate 退出

 

 


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

-Advertisement-
Play Games
更多相關文章
  • 一、準備工作 1、使用虛擬機:VMware-workstation-full-15.0.2版本。 下載地址:http://download3.vmware.com/software/wkst/file/VMware-workstation-full-15.0.0-10134415.exe 2、秘鑰: ...
  • 一.返回類型 ASP.NET Core 提供以下 Web API Action方法返回類型選項,以及說明每種返回類型的最佳適用情況: (1) 固定類型 (2) IActionResult (3) ActionResult<T> 1.1 固定類型 最簡單的操作是返回基元或複雜數據類型(如 string ...
  • 問題 使用 HTTP Client 請求 HTTPS 的 API 時出現 異常,並且證書已經傳入。 下麵就是問題代碼: 原因 因為在發出 HTTPS 請求的時候, 都會檢查 SSL 證書是否合法。如果不合法的話,就會導致拋出異常信息,而對方給出的證書是自簽發的測試介面的證書,所以不是一個合法的 SS ...
  • 一、在類庫項目上添加新項 二、 三、依次填入資料庫連接 選擇資料庫 就可以生成資料庫實體 ...
  • 嗨,你聽說了沒有?霸都.NET技術社區準備搞線下聚會了! 啥時候的事情啊? 最近才知道的消息啊! 那你是從哪裡知道的消息呢? .NET Core項目實戰交流群(637326624)啊! 那這次合肥.NET技術社區搞的線下聚會有多少人參加?怎麼參加?聚會的主題是什麼呢? ………… 你這一大堆問題我得好 ...
  • 一、為何會有rw spin lock? 在有了強大的spin lock之後,為何還會有rw spin lock呢?無他,僅僅是為了增加內核的併發,從而增加性能而已。spin lock嚴格的限制只有一個thread可以進入臨界區,但是實際中,有些對共用資源的訪問可以嚴格區分讀和寫的,這時候,其實多個讀 ...
  • Linux不比window好安裝python,折騰了好久,終於成功安裝上了python,window上一個安裝包完事,可惜Linux上python版本太低不好使,還要更換為3版本,百度了好久,教程上總是實踐起來各種錯誤,現在終於安裝上了,特將經驗分享於此. 3.解壓python文件 tar -xvz ...
  • 一、磁碟 (FHS:Filesystem Hierarchy Standard(文件系統層次化標準)的縮寫) 1、常用目錄 /var 主要存放經常變化的文件,如日誌 /usr/local 用戶自行安裝的軟體 /proc 虛擬文件系統,例如系統內核、進程、外部設備及網路狀態等 /lost+found ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...