官术网_书友最值得收藏!

Choosing when to apply Bash

There are some tasks for which shell scripting in general, and Bash in particular, are especially well-suited:

  • Prototyping: Short Bash programs are quick and easy to write. It's quite common to "hack together" a simple script in Bash for later replacement by a script or program in a more advanced programming language that requires more effort to write and maintain.

  • Interactive system administration: A Bourne-style shell is assumed in very many contexts in Unix, and almost all of the system documentation you read will tell you to issue commands in a Bourne-style shell. This makes it a natural choice for a scripting language.

  • Automation: If you have a set of commands you often run together, making a script for them is as simple as writing them all into a text file, each on a new line, and making that file executable.

  • Connecting programs together: Like all Shell scripting languages, Bash specializes in moving data to and from files and between processes. Many programs are designed to work together in this way.

  • Filtering and transforming text input: Some programs, however, aren't designed to cooperate in this way, and they require some data filtering and transformation in the middle. Bash can be a very convenient language for doing this, and it's also a good language to call other tools such as awk or sed to do it for you.

  • Navigating the Unix filesystem: In Bash, it does not require much code to navigate and iterate through the filesystem, discovering, filtering, and processing files within it at runtime. Coupled with the find tool, especially a high-powered version such as GNU find, a lot can be done in a pattern over a filesystem with relatively little code.

  • Basic pattern-matching on strings: Bash has features that make it good for basic pattern-matching on strings, especially filenames and path names, with parameter expansion.

  • Portability: Bash works on and is packaged for a huge variety of Unix-like systems. POSIX shell script is even more widely supported. If you need to know your script and its runtime will remain portable to many Unix-like systems, Bash might be a good choice.

主站蜘蛛池模板: 三门峡市| 安丘市| 南木林县| 蒙自县| 科尔| 皋兰县| 托克托县| 平阴县| 项城市| 清新县| 遵义县| 丹东市| 阳信县| 凤山市| 锦州市| 庆元县| 会同县| 新余市| 内黄县| 翼城县| 金堂县| 郓城县| 突泉县| 珠海市| 德安县| 大姚县| 江永县| 化隆| 清新县| 满城县| 庐江县| 阜城县| 莆田市| 自治县| 龙泉市| 福鼎市| 普安县| 塘沽区| 遂昌县| 中牟县| 瓮安县|