KShell Namespace Reference
Detailed Description
Provides some basic POSIX shell and bash functionality.
- See also:
- KStringHandler
- Since:
- 3.2
Enumeration Type Documentation
|
Status codes from splitArgs().
- Enumeration values:
-
NoError |
Success. |
BadQuoting |
Indicates a parsing error, like an unterminated quoted string. |
FoundMeta |
The AbortOnMeta flag was set and a shell meta character was encoutered. |
Definition at line 64 of file kshell.h. |
|
Flags for splitArgs().
- Enumeration values:
-
TildeExpand |
Perform tilde expansion. |
AbortOnMeta |
Bail out if a non-quoting and not quoted shell meta character is encoutered.
Meta characters are the command separators semicolon and ampersand , the redirection symbols less-than , greater-than and the pipe symbol , the grouping symbols opening and closing parens and braces , the command substitution symbol backquote , the generic substitution symbol dollar (if not followed by an apostrophe), the wildcards asterisk and question mark , and the comment symbol hash mark . Additionally, a variable assignment in the first word is recognized. |
Definition at line 40 of file kshell.h. |
Function Documentation
|
Obtain a user's home directory.
- Parameters:
-
| user | The name of the user whose home dir should be obtained. An empty string denotes the current user. |
- Returns:
- The user's home directory.
|
QString KShell::joinArgs |
( |
const char *const * |
argv, |
|
|
int |
argc = -1 |
|
) |
|
|
|
Quotes and joins argv together according to POSIX shell rules.
- Parameters:
-
| argv | an array of c strings to quote and join. The strings are expected to be in local-8-bit encoding. |
| argc | maximal number of strings in argv . if not supplied, argv must be null-terminated. |
- Returns:
- a command suitable for shell execution
|
|
Quotes and joins args together according to POSIX shell rules.
- Parameters:
-
| args | a list of strings to quote and join |
- Returns:
- a command suitable for shell execution
|
|
Same as above, but $'' is used instead of '' for the quoting.
The output is suitable for splitArgs(), bash, zsh and possibly other bourne-compatible shells, but not for plain sh. The advantage is, that control characters (ASCII less than 32) are escaped into human-readable strings.
- Parameters:
-
| args | a list of strings to quote and join |
- Returns:
- a command suitable for shell execution
|
|
Splits cmd according to POSIX shell word splitting and quoting rules.
Can optionally perform tilde expansion and/or abort if it finds shell meta characters it cannot process.
- Parameters:
-
| cmd | the command to split |
| flags | operation flags, see Options |
| err | if not NULL, a status code will be stored at the pointer target, see Errors |
- Returns:
- a list of unquoted words or an empty list if an error occurred
|
|
Performs tilde expansion on path .
Interprets "~/path" and "~user/path".
- Parameters:
-
| path | the path to tilde-expand |
- Returns:
- the expanded path
|
|