大家有什么推荐的么,在线教程或者书籍都可以,欢迎推荐
1
jswh 2017-06-09 16:17:51 +08:00
man bash
|
2
falcon05 2017-06-09 16:21:37 +08:00
自己学,然后写一本。
|
3
gaoyadianta OP @falcon05 咳咳,正在自己学,怎么学呢
|
4
gaoyadianta OP @jswh 现在好像默认的 shell 是 dash 吧,这样 man 出来的是命令行?跟写脚本文件一样?
|
5
jswh 2017-06-09 16:28:28 +08:00
@gaoyadianta 我不知道 dash,但是大部分都是兼容 bash 的。而且,一般服务器端的脚本执行也都是 bash 吧。
|
6
magic3584 2017-06-09 16:33:42 +08:00
|
7
cxbig 2017-06-09 16:43:55 +08:00
鸟哥的 Linux 系列书籍不错。
实际运用都是拿到需求后 Google 解决方案。 |
8
linus3389 2017-06-09 16:45:17 +08:00
pip install cheat
|
9
Miy4mori 2017-06-09 16:51:10 +08:00 via iPhone
我个人比较喜欢《 Shell 脚本学习指南》这本,另外我很好奇 dash 是什么?
|
10
Miy4mori 2017-06-09 16:52:17 +08:00 via iPhone
@gaoyadianta 一般默认都是 bash,但是不一定,不过 sh 是都有的。
|
11
aheadlead 2017-06-09 16:54:07 +08:00
我觉得还是仔细考虑下是不是一定要用 shell
感觉学 shell 非常痛苦… 各种奇技淫巧 读也读不懂 |
12
gaoyadianta OP @Miy4mori sh 就是指向 dash 的软连接
|
13
gaoyadianta OP @cxbig 我说的是脚本,不是 Linux 开发,基本语法之类的
|
14
gaoyadianta OP @aheadlead 是呢,那你觉得什么脚本好一些,python 吗
|
15
cxbig 2017-06-09 17:06:50 +08:00
@gaoyadianta
你说的 dash 可能是一个 Mac 的技术手册 App 1. sh 是 sh,bash 是 bash。他们不是一个东西,sh 更基础。 2. shell 脚本就是基本 命令堆起来的。 |
16
cxbig 2017-06-09 17:09:06 +08:00
|
17
Miy4mori 2017-06-09 17:13:53 +08:00 via iPhone
@gaoyadianta 我大概查了一下,你可能说的是 ubuntu 自某个版本后把 sh 指向了 dash,之前都是指向 bash 的。shell 脚本可以指定以什么 shell 执行的,这些都不是问题,最通用的应该还是 bash。
|
18
gaoyadianta OP @cxbig 不是,我不用 mac,dash 是符合 posix 标准的 shell,是 ubuntu 默认的 shell,sh 就是指向 dash 的软连接。是命令堆起来的我知道,但是还是有差别的嘛,就比方说写循环,写函数之类的
|
19
gaoyadianta OP @Miy4mori ubuntu6.5 以后就默认 dash 了,这俩差别很小,我去搜搜你说的那本
|
20
gaoyadianta OP @magic3584 全英文看起来有压力啊
|
21
knightdf 2017-06-09 17:26:58 +08:00
|
22
neighbads 2017-06-09 17:27:50 +08:00
直接去翻系统的 脚本。。。。。翻个几个就差不多了。。。
|
23
momocraft 2017-06-09 17:37:53 +08:00
仍然推荐 bash: 足够普及, 而且比 posix sh 多一些方便的功能. 看 abs 那本书就行.
性能一般不是问题, 或者说需要 sh 做的事再慢也有限 |
24
cxbig 2017-06-09 17:42:35 +08:00
@gaoyadianta
要不你去确认一下? Ubuntu 默认的是 Bash,Dash 是哪来的? sh 是 linux 最核心的命令解释器,bash/zsh 这些是基于它的扩展。你搞反了。 命令行也可以直接写函数和循环啊。shell 脚本文件只是一个承载命令的文件而已。 |
25
gaoyadianta OP @knightdf 这网站不错啊,回头看看
|
26
gaoyadianta OP @momocraft abs 那本?没懂
|
27
gaoyadianta OP @cxbig 确认了,ubuntu 默认的就是 dash,https://wiki.ubuntu.com/DashAsBinSh
只不过这两个的差别很小,怎么大家一直在讨论这个问题了... 你说的我懂,但是我就是需要一个教程...比方说,我有一个很复杂的功能,总不能一行一行敲命令行吧,我要写脚本程序的话,语法缩进之类的和命令行是有差别的,关键是,命令行也要学啊,所以都得需要一个教程啊 |
28
LCD 2017-06-09 18:14:17 +08:00 via Android
恕我愚钝,dash 是啥?
|
29
cxbig 2017-06-09 18:24:24 +08:00
@gaoyadianta
好吧,算我孤陋寡闻,还真有个 Dash。从未用过。从 0804 上手 Ubuntu 开始就一直用的是 Bash。 是有略微的差别,但是不大。你去网上搜的解决方案基本都可以直接放文件里跑。 缩进不影响功能,只影响阅读。 都是一步步来的,我也是一个个命令手动试,成功了放文件里。 |
30
wlsnx 2017-06-09 18:24:48 +08:00
shell 不是 python,不强制缩进,语法也和命令行没区别,教程到网上随便一找就有了。推荐《 Linux 命令行与 shell 脚本编程大全》,还有 https://github.com/jlevy/the-art-of-command-line
|
31
deweixu 2017-06-09 18:25:51 +08:00
|
32
ynyounuo 2017-06-09 18:47:18 +08:00
|
33
gaoyadianta OP |
34
momocraft 2017-06-09 21:17:20 +08:00
@gaoyadianta Advanced Bash-Scripting Guide http://tldp.org/LDP/abs/html/
|
35
wanglaihuai 2017-06-10 00:06:41 +08:00 via Android 1
大神们没人看过这个网站呢? http://man.linuxde.net
|
36
cxbig 2017-06-10 00:13:07 +08:00
@wanglaihuai
这个太差了,很简单的命令都识别不了。 试试了下: find . -type f => 很抱歉,你查询的 *** 命令还没有被录入! 用这个好了: https://explainshell.com/ |
37
wanglaihuai 2017-06-10 00:16:54 +08:00 via Android
@cxbig 原来如此,多谢大神指点😃
|
38
Owenjia 2017-06-10 01:40:22 +08:00
推荐看下下面这两个:
穷佐罗的 Linux 书 http://liwei.life/category/shell/ 快乐的 Linux 命令行( The Linux Command Line 中文版) http://billie66.github.io/TLCL/index.html |
39
CYKun 2017-06-10 03:10:02 +08:00 via Android
《 Linux Shell 脚本攻略》
|
40
happywowwow 2017-06-10 03:46:42 +08:00
语法特性太多 我是记不住
之前看这个 每次要写的时候还是要拿来看一看 http://www.cnblogs.com/barrychiao/archive/2012/10/22/2733210.html 还有一个 http://mywiki.wooledge.org/BashFAQ |
41
sss3600123 2017-06-10 07:16:05 +08:00 via iPhone
装了 fish,命令都可以补全,感觉还可以
|
42
zdt3476 2017-06-10 09:54:09 +08:00
我一般是要用到什么就去查什么,前提是有其他语言的基础,用的久了,基本的东西也学的 7788 了。
|
43
Nanguage 2017-06-10 10:08:45 +08:00
|
44
xiaket 2017-06-10 11:45:06 +08:00
@sss3600123 fish 的坑不是一般的多...
|
45
robertzhouxh 2017-06-10 15:30:56 +08:00
|
46
Vicer 2017-06-10 16:50:18 +08:00 via Android
|
47
cxbig 2017-06-10 16:55:50 +08:00
@sss3600123 不建议新人学 Fish
毕竟不是普遍内置的工具,安装会额外增加系统负载,而且语法结构大不一样,和其他解析器的兼容较差。 |
48
USCONAN 2017-06-10 17:05:26 +08:00
dash 和 bash 的腳本不兼容比較坑
|
49
TangMonk 2017-06-10 17:08:30 +08:00
Fish 好用是好用,主要是很多主流的软件不兼容
|
50
scinart 2017-06-10 19:42:17 +08:00 via iPhone
Advanced Bash-Scripting Guide +1
|
51
Reficul 2017-06-11 14:35:45 +08:00
ash,dash,bash,zsh,fish 各有各的不同,那些 awk,sed,grep 轮子都是方的,学起来痛苦无比=-=,不过学会了比用高级语言可能还能快一点
|