SmartShell: Automated Shell Scripts Synthesis from Natural Language

Hao Li, Yu Ping Wang, Jie Yin, Gang Tan

科研成果: 期刊稿件文章同行评审

3 引用 (Scopus)
Plum Print visual indicator of research metrics
  • Citations
    • Citation Indexes: 3
  • Captures
    • Readers: 5
see details

摘要

Modern shell scripts provide interfaces with rich functionality for system administration. However, it is not easy for end-users to write correct shell scripts; misusing commands may cause unpredictable results. In this paper, we present SmartShell, an automated function-based tool for shell script synthesis, which uses natural language descriptions as input. It can help the computer system to "understand" users' intentions. SmartShell is based on two insights: (1) natural language descriptions for system objects (such as files and processes) and operations can be recognized by natural language processing tools; (2) system-administration tasks are often completed by short shell scripts that can be automatically synthesized from natural language descriptions. SmartShell synthesizes shell scripts in three steps: (1) using natural language processing tools to convert the description of a system-administration task into a syntax tree; (2) using program-synthesis techniques to construct a SmartShell intermediate-language script from the syntax tree; (3) translating the intermediate-language script into a shell script. Experimental results show that SmartShell can successfully synthesize 53.7% of tasks collected from shell-script helping forums.

源语言英语
页(从-至)197-220
页数24
期刊International Journal of Software Engineering and Knowledge Engineering
29
2
DOI
出版状态已出版 - 1 2月 2019
已对外发布

指纹

探究 'SmartShell: Automated Shell Scripts Synthesis from Natural Language' 的科研主题。它们共同构成独一无二的指纹。

引用此

Li, H., Wang, Y. P., Yin, J., & Tan, G. (2019). SmartShell: Automated Shell Scripts Synthesis from Natural Language. International Journal of Software Engineering and Knowledge Engineering, 29(2), 197-220. https://doi.org/10.1142/S0218194019500098