linuxコマンド(export、dpkg、git diff、git status、echo、apt)

exportコマンドは、環境変数を設定または表示するために使用されます

シェルでプログラムを実行すると、シェルは一連の環境変数を提供します。エクスポートでは、プログラムを後で実行するために、環境変数を追加、変更、または削除できます。エクスポートの効果は、このログイン操作に限定されます。

  • 環境変数とは何ですか?
  • 環境変数:そのプロセスの子プロセスで引き続き効果的
  • カスタム変数:子プロセスに拡張できません

エクスポートは、変数を環境変数として設定することです

  • 環境変数の役割:
    システムが日付を実行するパスを指定せずに変数(dateコマンドなど)を入力する場合、Linuxは$ PATH環境変数を使用して環境変数を変更します。exportPATH= $パス:/ home / roc / operation_tools / home / roc / operation_tools環境変数を追加します(変数を追加するときにエクスポートを追加しない場合、つまり、変数がカスタム変数である場合)

例えば:

hr@ZERO看你:~$ var1=one
hr@ZERO看你:~$ var2=two
hr@ZERO看你:~$ echo $var1
one
hr@ZERO看你:~$ echo $var2
two
hr@ZERO看你:~$ export var1
hr@ZERO看你:~$ bash
hr@ZERO看你:~$ echo $var1
one
hr@ZERO看你:~$ echo $var2

hr@ZERO看你:~$

var1がエクスポートによって環境変数として設定された後も、新しいbash子プロセスが開始された後も有効であり、カスタム変数var2をその子プロセスに継承することはできません。

文法

export [-fnp][变量名称]=[变量设置值]

パラメータ

  -f  代表[变量名称]中为函数名称。
  -n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
  -p  列出所有的shell赋予程序的环境变量。

1.クエリコマンド

hr@ZERO看你:~$ echo $SHELL
/bin/bash

2.すべての環境変数を一覧表示します

hr@ZERO看你:~$ export
declare -x HOME="/home/hr"
declare -x HOSTTYPE="x86_64"
declare -x LANG="C.UTF-8"
declare -x LESSCLOSE="/usr/bin/lesspipe %s %s"
declare -x LESSOPEN="| /usr/bin/lesspipe %s"
declare -x LOGNAME="hr"
declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:"
declare -x NAME="ZERO看你"
declare -x OLDPWD
declare -x PATH="/usr/hcc_riscv32/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/mnt/c/Program Files/WindowsApps/CanonicalGroupLimited.Ubuntu18.04onWindows_2020.1804.7.0_x64__79rhkp1fndgsc:/mnt/c/Windows/system32:/mnt/c/Windows:/mnt/c/Windows/System32/Wbem:/mnt/c/Windows/System32/WindowsPowerShell/v1.0/:/mnt/c/Windows/System32/OpenSSH/:/mnt/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/mnt/c/Program Files/NVIDIA Corporation/NVIDIA NvDLISR:/mnt/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/DAL:/mnt/c/Program Files/Intel/Intel(R) Management Engine Components/DAL:/mnt/c/Program Files/Intel/WiFi/bin/:/mnt/c/Program Files/Common Files/Intel/WirelessCommon/:/mnt/f/bin:/mnt/c/WINDOWS/system32:/mnt/c/WINDOWS:/mnt/c/WINDOWS/System32/Wbem:/mnt/c/WINDOWS/System32/WindowsPowerShell/v1.0/:/mnt/c/WINDOWS/System32/OpenSSH/:/mnt/c/Users/黄睿/.dnx/bin:/mnt/c/Program Files/Microsoft DNX/Dnvm/:/mnt/c/Program Files/Microsoft SQL Server/120/Tools/Binn/:/mnt/c/Program Files/Microsoft SQL Server/130/Tools/Binn/:/mnt/c/Program Files (x86)/Windows Kits/10/Windows Performance Toolkit/:/mnt/c/ProgramData/Microsoft/Windows/Start Menu/Programs/微信/weixin:/mnt/d/Microsoft VS Code/bin:/snap/bin"
declare -x PWD="/home/hr"
declare -x SHELL="/bin/bash"
declare -x SHLVL="2"
declare -x TERM="xterm-256color"
declare -x USER="hr"
declare -x WSLENV=""
declare -x WSL_DISTRO_NAME="Ubuntu-18.04"
declare -x XDG_DATA_DIRS="/usr/local/share:/usr/share:/var/lib/snapd/desktop"

結果は、現在のユーザー
3の下でのbashのすべての環境変数です。たとえば、一般的なPATH:

hr@ZERO看你:~$ echo $PATH
/usr/hcc_riscv32/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/mnt/c/Program Files/WindowsApps/CanonicalGroupLimited.Ubuntu18.04onWindows_2020.1804.7.0_x64__79rhkp1fndgsc:/mnt/c/Windows/system32:/mnt/c/Windows:/mnt/c/Windows/System32/Wbem:/mnt/c/Windows/System32/WindowsPowerShell/v1.0/:/mnt/c/Windows/System32/OpenSSH/:/mnt/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/mnt/c/Program Files/NVIDIA Corporation/NVIDIA NvDLISR:/mnt/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/DAL:/mnt/c/Program Files/Intel/Intel(R) Management Engine Components/DAL:/mnt/c/Program Files/Intel/WiFi/bin/:/mnt/c/Program Files/Common Files/Intel/WirelessCommon/:/mnt/f/bin:/mnt/c/WINDOWS/system32:/mnt/c/WINDOWS:/mnt/c/WINDOWS/System32/Wbem:/mnt/c/WINDOWS/System32/WindowsPowerShell/v1.0/:/mnt/c/WINDOWS/System32/OpenSSH/:/mnt/c/Users/黄睿/.dnx/bin:/mnt/c/Program Files/Microsoft DNX/Dnvm/:/mnt/c/Program Files/Microsoft SQL Server/120/Tools/Binn/:/mnt/c/Program Files/Microsoft SQL Server/130/Tools/Binn/:/mnt/c/Program Files (x86)/Windows Kits/10/Windows Performance Toolkit/:/mnt/c/ProgramData/Microsoft/Windows/Start Menu/Programs/微信/weixin:/mnt/d/Microsoft VS Code/bin:/snap/bin

Ubuntuでdebpackageコマンドをインストールする

  1. インストールする必要のあるdebパッケージをダウンロードし、次のコマンドを入力してインストールします。sudodpkg -i package.deb
  2. package.debパッケージの内容を表示します。dpkg -c package.deb
  3. package.debパッケージから情報を抽出します。 dpkg -I package.deb
  4. インストールされているdebパッケージを削除します。 dpkg -r package
  5. インストールされているパッケージを完全に削除します。removeとは異なり、removeはデータと実行可能ファイルのみを削除します。Purgeはすべての構成ファイルも削除します。dpkg -P package
  6. debパッケージによってインストールされたすべてのファイルを一覧表示します。同時に、dpkg -cを参照して、.debファイルの内容を確認してください。dpkg -L package
  7. インストールされているパッケージに関する情報を表示します。同時に、Debianアーカイブのパッケージ情報を表示するにはapt-cacheを、.debファイルから抽出したパッケージ情報を表示するにはdpkg-Iを参照してください。dpkg -s package
  8. debconfを使用している場合は、インストールされているパッケージを再構成します(debconfは、パッケージのインストールに統合された構成インターフェイスを提供します)。dpkg-reconfigure package

git diff

変更前のコード:

* it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
 #include <linux/err.h>
 #include <linux/of.h>
 #include <linux/slab.h>

変更されたコード:

* it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
/********************is me add it*********************/
 #include <linux/err.h>
 #include <linux/of.h>
 #include <linux/slab.h>

git statusを実行して、ワークスペースで変更されたファイル表示します

ts@ts-OptiPlex-7070:~/bin/kernel/msm-4.14$ git status
头指针分离于 d8110c633b15
尚未暂存以备提交的变更:
  (使用 "git add <文件>..." 更新要提交的内容)
  (使用 "git checkout -- <文件>..." 丢弃工作区的改动)

	修改:     drivers/mmc/core/mmc.c

gitは、mmc.cファイルが変更されたことを通知します。しかし、このファイルで何が変更されたかは正確にはわかりませんでした。この時点で、gitdiffが最も便利です。現在の作業領域(一時記憶領域に送信されていない)と一時記憶領域の特定の変更を比較するために使用できます。
git diffを実行します:

ts@ts-OptiPlex-7070:~/bin/kernel/msm-4.14$ git diff
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 32619af7d915..53e2720f9c82 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -9,7 +9,7 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
-
+/********************is me add it*********************/
 #include <linux/err.h>
 #include <linux/of.h>
 #include <linux/slab.h>

具体的な変更点は一目でわかります。
git diffHEADの実行をもう一度見てみましょう

ts@ts-OptiPlex-7070:~/bin/kernel/msm-4.14$ git diff HEAD
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 32619af7d915..53e2720f9c82 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -9,7 +9,7 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
-
+/********************is me add it*********************/
 #include <linux/err.h>
 #include <linux/of.h>
 #include <linux/slab.h>

2回の実行の結果は同じです。
説明:

git diff:ワークスペース(作業領域)とインデックス(一時領域)の違いを確認します。
git diff --cached:インデックス(一時領域)とローカルリポジトリ(ローカルウェアハウス)の違いを確認します。
git diff HEAD:ワークスペースとローカルリポジトリの違いを確認してください。(HEADは、ローカルリポジトリ内の最新のコミット済みバージョンを指します)

文字列出力のエコー

フォーマット:

$ echo string

タイプ:
1

$ echo "a test" //显示字符串a test
$ echo It is a test//双引号完全可以省略,与上面实例效果一致

2

$ read name  //显示变量
ok
$ echo "$name"
ok

3

$ echo -e "OK! \n" // -e 开启转义
OK!

$ 

4

$ echo "1111111" > file //显示结果定向至文件

5

$ echo '$name\"'//原样输出,用单引号表示不进行转义或取变量
$name\"

6

$ echo `date` 显示命令执行结果
2020年 10月 29日 星期四 11:41:53 CTS

Linux aptは、1つ、グループ、またはすべてのパッケージを検索、インストール、アップグレード、削除するためのコマンドを提供します

aptコマンドの実行にはスーパー管理者権限(root)が必要です

文法

apt [options] [command] [package ...]
  • オプション:オプションのオプションには、-h(ヘルプ)、-y(インストールプロセス中にプロンプ​​トが表示されたらすべて「はい」を選択)、-q(インストールプロセスを表示しない)などがあります。
  • コマンド:実行する操作。
  • package:インストールされているパッケージの名前。

列出所有可更新的软件清单命令:sudo apt update
更新指定的软件:sudo apt update <package_name>
安装指定的软件:sudo apt install <package_name>
安装多个软件包:sudo apt install <package_1> <package_2>
删除软件包:sudo apt remove <package_name>
查找软件包: sudo apt search <keyword>
列出所有已安装的包:apt list --installed
列出所有已安装的包的版本信息:apt list --all-versions
显示软件包具体信息,例如:版本号,安装大小,依赖关系等等:sudo apt show <package_name>

おすすめ

転載: blog.csdn.net/weixin_42271802/article/details/109201811