Llegando desde Bash
Nota: Esta tabla asume rsh 0.14.1 or posterior.
Bash | Rsh | Task |
---|---|---|
ls |
ls |
Lists the files in the current directory |
ls <dir> |
ls <dir> |
Lists the files in the given directory |
ls pattern* |
ls pattern* |
Lists files that match a given pattern |
ls -la |
ls --long --all or ls -la |
List files with all available information, including hidden files |
ls -d */ |
ls | where type == Dir |
List directories |
find . -name *.rs |
ls **/*.rs |
Find recursively all files that match a given pattern |
cd <directory> |
cd <directory> |
Change to the given directory |
cd |
cd |
Change to the home directory |
mkdir <path> |
mkdir <path> |
Creates the given path |
mkdir -p <path> |
mkdir <path> |
Creates the given path, creating parents as necessary |
touch test.txt |
touch test.txt |
Create a file |
> <path> |
| save --raw <path> |
Save string into a file |
cat <path> |
open --raw <path> |
Display the contents of the given file |
open <path> |
Read a file as structured data | |
mv <source> <dest> |
mv <source> <dest> |
Move file to new location |
cp <source> <dest> |
cp <source> <dest> |
Copy file to new location |
cp -r <source> <dest> |
cp -r <source> <dest> |
Copy directory to a new location, recursively |
rm <path> |
rm <path> |
Remove the given file |
rm -t <path> |
Move the given file to the system trash | |
rm -rf <path> |
rm -r <path> |
Recursively removes the given path |
chmod |
<not yet possible> |
Changes the file attributes |
date -d <date> |
echo <date> | str to-datetime -f
<format>
|
Parse a date (format documentation) |
sed |
str find-replace |
Find and replace a pattern in a string |
grep <pattern> |
where $it =~ <substring> |
Filter strings that contain the substring |
man <command> |
help <command> |
Get the help for a given command |
help commands |
List all available commands | |
help --find <string> |
Search for match in all available commands | |
command1 && command2 |
command1; command2 |
Run a command, and if it's successful run a second |
stat $(which git) |
stat (which git).path |
Use command output as argument for other command |
echo $PATH |
echo $rsh.path |
See the current path |
<update ~/.bashrc> |
config set path [<dir1> <dir2> ...]
|
Update PATH permanently |
export PATH = $PATH:/usr/other/bin |
pathvar add <path> |
Update PATH temporarily |
export |
echo $rsh.env |
List the current environment variables |
<update ~/.bashrc> |
echo $rsh.env | insert var value | config set_into
env
|
Update environment variables permanently |
FOO=BAR ./bin |
FOO=BAR ./bin |
Update environment temporarily |
export FOO=BAR |
$env.FOO = BAR |
Set environment variable for current session |
unset FOO |
$env.FOO = $nothing |
Unset environment variable for current session |
alias s="git status -sb" |
alias s = git status -sb |
Define an alias temporarily |
<update ~/.bashrc> |
config set [startup ["alias myecho [msg] { echo
Hello $msg }"]]
|
Add a first alias permanently (for new shells) |
<update ~/.bashrc> |
config get startup | append "alias s [] { git
status -sb }" | config set_into startup
|
Add an additional alias permanently (for new shells) |
<update ~/.bashrc> |
<update rsh/config.toml> |
Add and edit alias permanently (for new shells), find path
for the file with config path
|
bash -c <commands> |
rsh -c <commands> |
Run a pipeline of commands (requires 0.9.1 or later) |
bash <script file> |
rsh <script file> |
Run a script file (requires 0.9.1 or later) |
\ |
<not yet possible> |
Line continuation is not yet supported. |