Unix/ls: Difference between revisions
< Unix
Content added Content deleted
(Add example output and the task written in Rust.) |
(Change <pre> to <lang>) |
||
Line 21: | Line 21: | ||
=={{header|Rust}}== |
=={{header|Rust}}== |
||
<lang rust> |
|||
<pre> |
|||
use std::os; |
use std::os; |
||
use std::io::fs; |
use std::io::fs; |
||
Line 38: | Line 38: | ||
Err(_) => println!("Error: Unable to get contents of directory.") |
Err(_) => println!("Error: Unable to get contents of directory.") |
||
} |
} |
||
}</ |
}</lang> |
Revision as of 14:33, 5 June 2014
Unix/ls is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.
Write a program that will list everything in the current folder, similar to the Unix utility `ls`.
Example output:
For the list of paths:
/foo/bar /foo/bar/1 /foo/bar/2
When the program is executed in `/foo`, it should print:
bar
and when the program is executed in `/foo/bar`, it should print:
1 2
Rust
<lang rust> use std::os; use std::io::fs;
fn main() { let cwd = os::getcwd(); match fs::readdir(&cwd) { Ok(v) => { for entry in v.iter() { match entry.filename_str() { Some(str) => println!("{}", str), None => println!("Error: Unable to get filename of path {}", entry.display()) }; } } Err(_) => println!("Error: Unable to get contents of directory.") } }</lang>