上篇文章介绍了些Linux下的常用软件,终端(terminal)的重要性不言而喻。这篇文章向大家介绍下终端插件的安装(oh-my-zsh)、桌面环境的美化(tweak)以及一些好玩的东西
Terry⼤佬分享了他⽤的Linux⼯具集https://sites.google.com/site/imterry/computer/tools
那⾥⾯的我也没⽤过多少,不过⼤体上也知道⼀些常⽤的⼯具
终端的配置及常⽤的命令
Terminal默认的shell是bash
,我们平常使⽤的时候,命令要⼀点点敲,虽然可以配合Tab补全,然⽽机械化的操作还是容易让⼈产⽣疲劳,因此我们可以安装zsh
和oh-my-zsh
插件来改善使⽤体验
项⽬地址: https://github.com/ohmyzsh/ohmyzsh
安装zsh
sudo apt install zsh
安装 oh-my-zsh
PS: 如果你还没有安装curl
、git
,请先安装
sudo apt install curl git -y
sh -c "$(curl -x socks5://127.0.0.1:10808 -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
我在上⾯加的那个 -x 参数是为了⾛代理,提⾼下载速度,之后会问你是否将默认的shell环境改为 zsh
,请输⼊ y
如果你不⼩⼼输错密码,那个命令消失了,你可以⼿动修改当前⽤户的默认 shell 为 zsh
chsh -s $(which zsh)
# $()的意思是先执⾏这⾥⾯的命令
# 假设zsh可执⾏⽂件在 /usr/bin/zsh
# 上⾯命令等效为
chsh -s /usr/bin/zsh
接着为 zsh
安装⼏个插件 zsh-autosuggestions
、zsh-syntax-highlighting
、zsh-completions
使⽤前建议为 git
配置代理或者使用proxychains4
以提⾼速度
git config --global http.proxy socks5://127.0.0.1:10808
git config --global https.proxy socks5://127.0.0.1:10808
这样配置后,会⽣成⼀个 ~/.gitconfig
⽂件,记录着git的配置
然后克隆插件
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.ohmy-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:=~/.oh-myzsh/custom}/plugins/zsh-completions
之后编辑 ~/.zshrc
, 你可以使⽤ nano 或者 vim,如果没装 vim 的话请先通过 apt 来安装
vim ~/.zshrc
# 将 zsh-autosuggestions、zsh-syntax-highlighting、zsh-completions 添加进去
# 同时添加下面的补全命令
autoload -U compinit && compinit
可以通过/plugins
,然后回⻋,会⾃动帮你查找 plugins 所在位置,然后按 i 进⼊编辑模式,然后将插件添加进去,添加好后,按 Esc 退出编辑模式,再按:wq
保存退出
# 再输⼊如下命令使配置⽣效
zsh
vim 的相关命令⼤家可以看看书或者找些资料,⽤习惯了就很⽅便了
http://cn.linux.vbird.org/linux_basic/0310vi.php
https://www.runoob.com/linux/linux-vim.html
现在的是效果是,你输⼊命令时会有 suggestion ,按->键可以直接帮你补全
再说说终端环境下,常用的快捷键
- 键盘⾥的上下左右,按上会显⽰上⼀个命令
Ctrl + a
使光标来到⾏⾸,Ctrl +e
使光标来到⾏末Ctrl + u
删除光标前的所有命令,Ctrl +k
删除光标后的所有命令- 如果想同时输⼊两个或者多个命令,可以在命令之间插⼊⼀个
;
,如
cd ~/Downloads ; ls -lh
- 如果想输⼊两个或者多个命令,同时要求前者正常执⾏后,后者才能执⾏,如
cd ~/Videos && ls -lh
Linux下还有很多常⽤命令如 sed
、 grep
、 tail
、 head
、 less
、 awk
、 cut
、 cp
、 mv
等,⼤家可以看看书学习⼀下,这些都是很实⽤的⼀些命令
建议有能⼒的,可以学习⼀下Shell脚本的编写,这样的⾃动化脚本可以让你摆脱繁琐的重复命令,⽐如我现在将Markdown格式的⽂档⽤ Hexo 博客系统进⾏渲染,然后以在线的⽅式让⼤家阅读,如果我每次都要重复输⼊
hexo g && mv public hexo && rsync -a hexo root@xx.xxx.xxx.xxx:/var/www/
&& rm -r hexo
这是⼀个很痛苦的⼯作,这个时候我只需要写⼀个简单的Shell脚本
#/usr/bin/env bash
mv public hexo &&
rsync -a hexo root@47.102.109.198:/var/www/wordpress &&
rm -r hexo
# 给予可执⾏权限
chmod +x upload.sh
# 运⾏这个脚本
./upload.sh
每次我写完⽂章只需要事先本地调试⼀下,然后运⾏那个脚本就将⽹⻚直接上传到服务器上了,你们就可以看到我最新发布的⽂章了(现在用wordpress),我这⾥只是举⼀个⾮常简单的例⼦
AppImageLauncher
大家使用AppImage的时候会发现图标不好看或者管理很不方便,每次使用需要找到AppImage所在的位置然后双击打开,不像其他应用一样直接在Dock里按一下就出来了,这多方便啊===
项目地址: https://github.com/TheAssassin/AppImageLauncher
sudo add-apt-repository ppa:appimagelauncher-team/stable
sudo apt update
sudo apt install appimagelauncher
安装好后在Applications中打开,添加AppImage文件所在的文件夹
添加好后,点OK,你就可以像其他应用一样在Applications中找到那些AppImage软件对应的图标了,很方便
桌面环境美化
一般Linux默认装的桌面环境对应的主题不是那么的美观,至少和macOS没得比🤔
我先上张我美化过的桌面环境
美化主题我们要用到的工具是gnome-tweak
,以及特定的主题文件
主题可以在这里选: https://www.gnome-look.org/
我用的主题是: Orchis gtk theme
图标主题: Tela-icon-theme
# 安装gnome-tweak
sudo apt install gnome-tweak-tool
# 安装chrome-gnome-shell
sudo apt install chrome-gnome-shell
下载主题和图标主题
下载好后解压,将主题解压后的文件夹移动到 /usr/share/themes
下,图标主题移动到 /usr/share/icons
sudo mv Orchis /usr/share/themes/
sudo mv 01-Tela/Tela /usr/share/icons/
sudo mv 01-Tela/Tela-dark/ /usr/share/icons
之后在任务栏里搜索Tweaks
,打开后找到Apperance
-〉Themes
,将applications和icons改为之前添加的主题即可,同时记得在Extensions中勾上ubuntu dock
是不是发现shell
没法更改,请看下面
用火狐浏览器打开https://extensions.gnome.org/extension/19/user-themes/
安装这个插件后就可以更改shell theme
了
既然说到gnome-extensions
,顺便可以安装一个显示网速的插件
https://extensions.gnome.org/extension/104/netspeed/
那么如何将dock修改到正下方呢?
先安装dconf-editor
sudo apt install dconf-editor
之后打开dconf-editor
,依次进入到 org->gnome->shell->extensions->dash-to-dock
取消勾选extend-height,之后找到dock-position,将里面的value改为底部(即Buttom
),你的dock就跑到下面了,其他的大家可以根据情况自行更改,我就不赘述了
好玩的东东
看了这么多让⼈懵的命令,是不是有点⼩⽆聊呢?下⾯再介绍些⾮常好玩的东⻄,给⼤家涨涨兴趣
Screenfetch
是不是好有逼格!!!😋
sudo apt install screenfetch
# 然后输⼊如下命令就可以Print你的专属Ubuntu了!!!
screenfetch
youtube-dl
youtube-dl有好几个月未合并pr了,有权限的开发者也不知道去哪了,而且现在youtube对此有针对限速导致下载速度极慢,目前活跃在一线的youtube-dl fork版本已出现,叫yt-dlp,解决了上述问题和添加了很多功能,请大家安装使用
sudo wget https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -O /usr/local/bin/yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp
然后在使用的时候将下面的youtube-dl替换为yt-dlp即可!
吗的,勋哥你怎么⽼是给我们看⼀些花⾥胡哨的东⻄,没点实际⽤处啊。唉,好吧我错了😂,下⾯介绍个Github 上⼀个⽤ Python 写的90.4k+ Star的项⽬ youtube-dl
https://github.com/ytdl-org/youtube-dl
youtube-dl
是个强⼤的视频、⾳频下载⼯具,⽀持很多⽹站的⾳视频下载(当然你也考虑用you-get,请自行举一反三哦)
这⾥有⼀份列表 https://ytdl-org.github.io/youtube-dl/supportedsites.html
学会使⽤ youtube-dl
后我们就可以通过命令⾏下载 youtube
、 bilibili
、 vimeo
等⽹站的视频和⾳乐了
先安装pip
sudo apt install python3-pip
之后通过 pip
来安装 youtube-dl(请使用上面提及的yt-dlp)
sudo -H pip3 install --upgrade youtube-dl -i https://pypi.tuna.tsinghua.edu.cn/simple
或者将 pip 全局设置为清华的镜像源
pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
这样下次安装程序时直接 sudo -H pip3 install [some-package]
即可
由于有些⽹站的⾳视频编码有些”异常”,同时现在有些⽹站的⾳视频是分离的,如 Youtube ,我们需要⼀个额外的⼯具来进⾏⾃动处理( youtube-dl 会⾃动调⽤它)
Here comes our hero — ffmpeg
对多媒体处理了解的同学,对 ffmpeg
肯定不会陌⽣, ffmpeg
是常⽤的⾳视频编码、处理的开源⼯具
我们可以通过 apt 来安装
sudo apt install ffmpeg
常⽤命令
- 获取⾳视频的格式
youtube-dl -F [url]
- 下载特定格式的视频或⾳频,
format_code
通过上⾯的那个命令获得
youtube-dl -f format_code [url]
- 使⽤代理,请根据实际情况来
youtube-dl --proxy socks5://127.0.0.1:10808
更多命令 请看官⽹ https://github.com/ytdl-org/youtube-dl
我下⾯也会演⽰下载字幕及合并到视频⾥的操作
下载Bilibili视频
以这个视频为例 https://www.bilibili.com/video/BV19t411a7uh
⾸先获取视频的format_code
# 先确定你要将视频下载到的位置,⽐如我要下载到~/Videos 中, 就先cd 进去
cd ~/Videos
# 获取 format_code
youtube-dl -F https://www.bilibili.com/video/BV19t411a7uh
我想下载format code
为 2的那⼀个视频
youtube-dl -f 2 https://www.bilibili.com/video/BV19t411a7uh
之后你就可以在你的 Videos那个⽂件夹找到你下载的视频了
下载Youtube视频和⾳乐
演⽰⼀
视频地址: https://youtu.be/NPBCbTZWnq0
第⼀步获取format_code
,因为Youtube在国内被墙以下所有命令都要配置代理
youtube-dl --proxy socks5://127.0.0.1:10808 -F https://youtu.be/NPBCbTZWnq0
这⾥回到我前⾯提到的问题,Youtube是采⽤⾳视频分离的,因此你需要选择两个format code
,⼀个是视频的,另⼀个是⾳频的。mp4
格式的视频只能和m4a
的视频组合,webm
的视频只能和webm
的⾳频组合
下⾯演⽰下载清晰度为1920×1080的mp4格式的视频和m4a那个格式的⾳频,即format code
分别为137和140
youtube-dl --proxy socks5://127.0.0.1:10808 -f 137+140 https://youtu.be/NPBCbTZWnq0
PS: 记住视频的format code要放在⾳频的前⾯,如果你只单独要某⼀个部分,那就只使⽤那⼀部分的format code
,如上⾯你只要⾳频,你就只使⽤ -f 140
就⾏了
演⽰⼆-下载带字幕的视频
https://www.youtube.com/watch?v=JtOMlDLxEy0
第⼀步也是获取format code
youtube-dl --proxy socks5://127.0.0.1:10808 -F https://www.youtube.com/watch?v=JtOMlDLxEy0
选好你要下载的视频流以及⾳频流
在播放界⾯看一下有什么字幕
可以看到有⼀个⾃动⽣成的英⽂字幕,根据官⽅⽂档,我们如果要下载这种字幕需要在使⽤时加上参数--write-auto-sub
同时 youtube-dl 官⽅⽂档还提及了⼀个 Post-processing 选项中的--embed-subs
参数,那真是太⽅便了,我们可以下载视频的同时把字幕也弄进去
youtube-dl --proxy socks5://127.0.0.1:10808 --write-auto-sub --embed-subs -f 248+250 https://www.youtube.com/watch\?v=JtOMlDLxEy0
之后⽤VLC打开那个视频,字幕默认是被禁⽤的,你可以右击播放的视频,在字幕那个选项中找到字幕轨道,你会发现⾥⾯有⼀个英⽂的字幕轨,选择那个字幕轨就可以开启这个视频的字幕了 !😋
alias 设置快捷命令
别忘了我们使用Linux是要学会提⾼效率的,下⾯我会教⼤家⼀个⽅法设置⼀些快捷命令,来提⾼我们的效率
每次输⼊ youtube-dl --proxy socks5://127.0.0.1:10808 -F
来获取format code
是不是很繁琐?其实我们可以⽤ alias
命令来设置⼀些快捷命令,以⽅便⾃⼰的使⽤
在终端输⼊如下命令
alias ytb_l="youtube-dl --proxy socks5://127.0.0.1:10808 -F "
之后我们只需要输⼊ ytb_l [url]
就可以获取视频的format code
了
但是呢这样配置的alias
只能⽤于当前的会话(session),即只在当前终端⽣效,你再开⼀个就⽆效了,对此我们可以将快捷命令写⼊ ~/.zshrc
中,因为每⼀次打开终端都会加载⼀次 ~/.zshrc
中的配置
PS: 如果你没有安装 zsh
,那么请将快捷命令写⼊ ~/.bashrc
中
vim ~/.zshrc
# 按G可以直接跳转到最后⼀⾏,然后添加如下命令
alias ytb_l="youtube-dl --proxy socks5://127.0.0.1:10808 -F "
alias ytb_d="youtube-dl --proxy socks5://127.0.0.1:10808 -f "
# :wq 保存退出
重新打开⼀个终端,你会发现上述快捷命令也可以正常使用,那就是生效了🥳
总结
Linux下提升效率的东⻄太多了,就看你掌握多少,熟练掌握命令⾏可以快速的处理⼀些图形化⼯具没法完成的事,学Linux,掌握其命令⾏的使⽤是必须的。更⾼级的玩法就是学习Shell脚本或者Python脚本的编写来完成⼀些⾃动化的命令
希望这三篇⽂章能给⼤家⼀些帮助,如果你有任何问题,欢迎在下面留言或者给我发邮件
Have a nice day !
发表回复