[00:00] <ClassBot> Logs for this session will be available at http://irclogs.ubuntu.com/2012/01/15/%23ubuntu-classroom.html following the conclusion of the session.
[00:01] <sagaci> Hi, I'd like to welcome you to the Ubuntu Equivalents session
[00:01] <sagaci> and thanks to JoseeAntonioR for his session on Firefox
[00:02] <sagaci> This session is all about applications that you can use on Ubuntu that you may commonly use on Windows or Mac
[00:03] <sagaci> if you have a question, please append QUESTION: at the start of your question so the ClassBot can pick it up :)
[00:04] <sagaci> this session is intended for people that are thinking of switching to Ubuntu, or have recently switched to Ubuntu and need to find applications to fit their needs
[00:05] <sagaci> and as such, I'll be running through some popular applications on Ubuntu
[00:05] <sagaci> most of these applications can be found and installed via the Ubuntu Software Centre
[00:06] <sagaci> I'll start off with the Browser
[00:06] <sagaci> On Windows, you may be used to using Internet Explorer or on a Mac, Safari
[00:07] <sagaci> Firefox in the default browser in Ubuntu, and a good browser at that
[00:08] <sagaci> I won't go into too much detail with Firefox, since JoseeAntonioR pretty much covered it in the last session
[00:09] <sagaci> but for alternatives - there's Chrome and Chromium. Chrome is the browser developed by Google and has gained a significant portion of the market, due to its slick interface and ease-of-use
[00:09] <sagaci> Chromium, by contrast, is the open-source browser that Chrome derives from
[00:12] <sagaci> since chromium is open-source, it is currently available in the Ubuntu Software Centre, but to get chrome, you'll have to look through https://www.google.com/chrome
[00:12] <sagaci> Microsoft Office alternative...? LibreOffice!
[00:14] <sagaci> LibreOffice is a complete suite of commonly used applications, such as a word processor, spreadsheet and presentation organiser
[00:16] <ClassBot> archie asked: Is there a simple intuitive equivalent to an image retouching program like "photofilte" for windows
[00:17] <sagaci> Although I'm not too well versed in image manipulation, I've found that tools such as Shotwell and Gimp have been able to carry out basic tasks, such as cropping and colour correction
[00:17] <ClassBot> archie asked: Should i rather use Firefox or Chromium concerning security?
[00:18] <sagaci> It's probably a question more towards JoseeAntonioR :)... but on both browsers, you should be able to install extension that limit damage of potential threats
[00:18] <sagaci> extensions*
[00:19] <sagaci> then again, a chunk of staying secure on the web relies on the user :)
[00:19] <ClassBot> benonsoftware asked: This might or might not be releated but why did the default move from OpenOffice to LibreOffice?
[00:20] <sagaci> Quite a big question for this kind of session, but as I can tell, moving away or "forking" OpenOffice has made it much easier for the community and developers to actually contribute code to the office suite
[00:22] <sagaci> when using a dual boot system, or you're in a place that uses multiple operating systems - you should consider leaning toward applications that are cross-platform
[00:22] <sagaci> Cross-platform means that the application will run on Ubuntu, Windows and MacOS
[00:23] <sagaci> this saves the need to constantly refocus your thinking onto "what Operating System am I using - oh, I'll have to use this application for that"
[00:23] <sagaci> for example, if you use firefox or chrome, they are easily installed on either environment, thus creating a more seamless experience
[00:24] <ClassBot> archie asked: is there a filebrowser that comes up with a "tree"-view like windows explorer? I didn't find a nautilus extension.
[00:24] <sagaci> I'm not sure about Nautilus, but I've been using Xubuntu and Thunar (its file manager) and it does support tree view
[00:25] <sagaci> Email client - Thunderbird
[00:26] <sagaci> as of 11.10, Thunderbird is the default email client
[00:26] <sagaci> TB is cross platform, so it's another good reason to use it across your systems :)
[00:28] <sagaci> Audio player - Rhythmbox/Banshee
[00:28] <sagaci> On Windows and MacOS, you're possibly used to using Windows Media Player or iTunes
[00:29] <sagaci> Good news, there's a bevvy of applications on Ubuntu dedicated to giving you your music :)
[00:31] <sagaci> on the latest release of Ubuntu, the default audio player is Banshee, a slick media player capable of music playback, library view , podcast subscriptions, internet radio and more
[00:31] <ClassBot> MrChrisDruif asked: I don't own an iPod, but do Banshee and Rhythmbox support syncing to iPod's?
[00:31] <sagaci> Unfortunately it really depends on what generation of iPod you have
[00:32] <sagaci> I haven't owned an iPod for quite a while (mine was a 3rd Gen iPod nano) and back then, it was much easier to sync on Ubuntu than it was on Windows/iTunes :)
[00:32] <sagaci> best bet is to just try plugging it it :)
[00:33] <ClassBot> benonsoftware asked: Does Banshee or Rhythmbox support activating iDevice's now?
[00:34] <sagaci> as far as I know, you need a Windows install or Mac to activate iDevices - at least the latest generation
[00:34] <ClassBot> archie asked: Does Ubuntu support widgets?
[00:35] <sagaci> archie: have a look into the program Screenlets... although I don't use widgets on my Ubuntu 11.10 install, I remember playing around with them in the Intrepid and Jaunty days (2008-2009) and they were useful once you have them set up
[00:36] <sagaci> if I think of widgets, I generally think of KDE and its desktop, potentially full of shiny gadgets
[00:37] <sagaci> on Video Player
[00:38] <sagaci> Totem Movie Player is the default movie playback application installed in Ubuntu
[00:39] <sagaci> Its minimal interface and its ability to play pretty much anything under the sun (that is, with restricted codecs installed), makes it a popular application among Ubuntu users
[00:40] <sagaci> for the sake of cross platform compatibility, you can also try VLC media player
[00:40] <sagaci> or mplayer, if you prefer to use the command-line
[00:43] <sagaci> MrChrisDruif: also mentions Clementine, and I'd like to mention amarok for KDE audio playback
[00:44] <sagaci> File Management
[00:44] <sagaci> In Windows, you'll find Windows Explorer and on MacOS, it's Finder
[00:45] <sagaci> Welcome to Nautilus, the file manager we've all grown to love
[00:45] <sagaci> on 11.04 and 11.10, you can access the file manager from the folder icon under the big ubuntu logo in the top of the Launcher
[00:46] <sagaci> on 10.10 and 10.04 LTS, you can click on Places and then Home Folder to achieve the same effect
[00:46] <sagaci> on Kubuntu, we have Dolphin or Konqueror, XFCE has Thunar and Lubuntu has pcmanfm
[00:48] <sagaci> these different applications serve the same purpose - to manage and manipulate files and folders but then main difference is their interface
[00:49] <sagaci> File managers such as thunar and pcmanfm may be better suited for low-spec computers, taking up less memory
[00:50] <sagaci> these kinds of tools are quite useful for viewing files, making directories, moving/copying files over different drives and more
[00:50] <ClassBot> There are 10 minutes remaining in the current session.
[00:52] <sagaci> although not totally up to date, there's sites such as Linux Alt - http://www.linuxalt.com/ that list equivalent programs for Ubuntu/Linux
[00:53] <sagaci> if you are having trouble finding a specific application, you can try asking in the #ubuntu channel, asking people in your LoCo - http://loco.ubuntu.com (find your local team here)
[00:55] <ClassBot> There are 5 minutes remaining in the current session.
[00:57] <sagaci> I've put together a wiki page - mostly based on cprofitt's User Day presentation in Jan 2010, on the alternatives available in a nice list - https://wiki.ubuntu.com/UserDays/14012012/Ubuntu%20Equivalent%20Programs
[00:59] <sagaci> also, in need of a solitaire/time-waster...?? Frozen-bubble is your friend :D
[00:59] <sagaci> thanks and have a good day
[00:59] <sagaci> up next, benonsoftware
[01:00] <ClassBot> Logs for this session will be available at http://irclogs.ubuntu.com/2012/01/15/%23ubuntu-classroom.html following the conclusion of the session.
[01:00] <benonsoftware> Hello and welcome to Getting Invloved in the Ubuntu Community
[01:01] <benonsoftware> Today I'll tell you about some of the teams and how to get into them
[01:01] <benonsoftware> First up at https://wiki.ubuntu.com/Teams there is a list of teams that you can join and help out with
[01:02] <ClassBot> sagaci asked: do I have to know how to program to get involved?
[01:02] <benonsoftware> Certainly not!
[01:02] <benonsoftware> There are LoCo (http://loco.ubuntu.com)
[01:03] <benonsoftware> teams that any one in the area can join
[01:03] <benonsoftware> For example I'm apart of the Ubuntu-Australian team and the only programming I know is websites :P
[01:04] <benonsoftware> Another team that a non-programmer can join in the Ubuntu Beginners Team
[01:04] <benonsoftware> https://wiki.ubuntu.com/BeginnersTeam
[01:04] <benonsoftware> There IRC channels are #ubuntu-beginners (Support) and #ubuntu-beginners-team (For on topic)
[01:05] <benonsoftware> In UBT (Ubuntu Beginners Team) there are Focus Groups
[01:05] <benonsoftware> at the moment there are the wiki focus group, bugs and programming/dev
[01:06] <ClassBot> raaa asked: What do teams do?
[01:06] <benonsoftware> raaa: The teams do just about anything, for example the Bug Control group helps with bugs, the Lubuntu team helps with the Lubuntu distro
[01:07] <benonsoftware> The UBT team helps with helping new members of the Ubuntu Community
[01:07] <benonsoftware> There is a team that would suit just about anyone in the world
[01:08] <benonsoftware> Progarmmers and non-programmer alike
[01:09] <benonsoftware> For example I started out with the Ubuntu Community in March/April writing the Team Reports for Ubuntu-Australia
[01:10] <benonsoftware> By the way if you would like to ask a question write it as QUESTION: This is a question in #ubuntu-classroom-chat
[01:12] <benonsoftware> There are also Ubuntu based distro teams
[01:12] <benonsoftware> Like Kubuntu, Lubuntu Xubuntu and so on
[01:13] <ClassBot> archie asked: How many people which are not Canonical employees are involved in LoCos etc.?
[01:13] <benonsoftware> archie: Heaps :P
[01:13] <benonsoftware> Sorry, I mis read it :P
[01:14] <benonsoftware> archie: Too be honest I am not really sure, I would expect some to be invloved
[01:14] <ClassBot> JoseeAntonioR asked: My LoCo is not approved. How can we get approved?
[01:15] <benonsoftware> JoseeAntonioR: Each team has to be approved by the LoCo council
[01:15] <benonsoftware> You can see https://wiki.ubuntu.com/LoCoCouncil/TeamApprovalGuidelines for more infomation
[01:15] <benonsoftware> Anymore questions so far
[01:16] <benonsoftware> JoseeAntonioR: Also https://wiki.ubuntu.com/LoCoGettingApproved is very good too
[01:17] <benonsoftware> I good way to get invovled is that each team usally has a TODO list
[01:19] <benonsoftware> Another team that is good for progarmmers is the MOTU (https://wiki.ubuntu.com/MOTU)
[01:19] <benonsoftware> They package software for Ubuntu
[01:20] <benonsoftware> another team for people who don't know how to program is the Documention Team
[01:20] <benonsoftware> a good way is to start is to go to https://help.ubuntu.com/community and start editing :P
[01:21] <benonsoftware> All you need is a Launchpad account
[01:22] <benonsoftware> Any questions about anything covered so far?
[01:23] <ClassBot> JoseeAntonioR asked: If you are an Ubuntu Member, are you an official member of your LoCo?
[01:24] <benonsoftware> JoseeAntonioR: No, you still have to go the normal proccess though your LoCo team
[01:26] <benonsoftware> But most LoCo teams is open to join if you live in that Country/State
[01:28] <ClassBot> archie asked: Are there Teams that are underrepresented?
[01:28] <benonsoftware> Well all teams need more people to join
[01:29] <benonsoftware> In my mind I haven't heard much about Ubuntu Advertisement 
[01:30] <benonsoftware> and also some LoCo teams maybe underreprested
[01:30] <ClassBot> archie asked: Which are the biggest/smallest LoCos?
[01:31] <benonsoftware> archie: Well on http://loco.ubuntu.com you can see each LoCo team and it all depends on the size of the area/how big Ubuntu is there
[01:32] <benonsoftware> Another team that isn't big is the Design Team
[01:32] <benonsoftware> There channel is #ubuntu-design and is always looking for new members
[01:33] <ClassBot> jokerdino asked: What do you do if your loco team is not active? For example I am part of the Ubuntu Tamil team and they don't have a mailing list. And they are no longer actively participating. Is it possible to request admin powers or what else can I do ?
[01:34] <benonsoftware> That always happenes, if you are team contact you can email rt@ubuntu.com and request a mailing list and you can either have a vote in your team for a new leader and if that fails contact the LoCo council
[01:36] <benonsoftware> jokerdino: ^^]
[01:39] <benonsoftware> Also Team Reports https://wiki.ubuntu.com/TeamReports are very, very good for any team
[01:40] <benonsoftware> Say if there is a team you would like to start?
[01:40] <benonsoftware> If there is a team you would like to create then see https://wiki.ubuntu.com/BuildingCommunity/CreatingTeamGuide
[01:42] <benonsoftware> Also many teams of monthly meetings
[01:42] <benonsoftware> Most LoCo meetings are done in there IRC channel so for Ubuntu-Australia it would be #ubuntu-au
[01:42] <benonsoftware> and other council/teams have there meetings in #ubuntu-meeting
[01:43] <benonsoftware> Are there any questions about anything?
[01:47] <ClassBot> pangolin asked: How do I contribute to helping the community via IRC, Can I become an op?
[01:47] <benonsoftware> pangolin: Well you can help with support, meetings and other things via IRC
[01:47] <benonsoftware> and with becoming a OP of the IRC Channel, first contact the other ops about it
[01:48] <benonsoftware> Usally core channel (eg #ubuntu, #kubuntu, #lubuntu, #ubuntu+1 -offtopic, etc.
[01:48] <benonsoftware> Have call for ops in the mailing lists and people apply
[01:48] <benonsoftware> For LoCo channels usally the team contact has Founder access in the channel so contact them about it
[01:49] <benonsoftware> For most other teams bring it up in your meeting
[01:50] <benonsoftware> Any more questions?
[01:50] <ClassBot> There are 10 minutes remaining in the current session.
[01:51] <benonsoftware> If anyone would like to contact me either PM myself or email me at benny AT touchlay DOT com
[01:52] <benonsoftware> Next we have Command Line Basics by tonyyarusso
[01:52]  * tonyyarusso waves
[01:53] <tonyyarusso> If you'd like, you can say what your current level of experience with the CLI is in -chat so I have a better sense of our audience today.
[01:53] <benonsoftware> Thanks everyone for attending this session and a big thanks to the Classroom Team
[01:55] <ClassBot> There are 5 minutes remaining in the current session.
[02:00] <ClassBot> Logs for this session will be available at http://irclogs.ubuntu.com/2012/01/15/%23ubuntu-classroom.html following the conclusion of the session.
[02:00] <tonyyarusso> All right, let's get started!
[02:01] <tonyyarusso> This session will introduce new users to the command line interface, and hopefully mention a new thing or two for those of you who already know your way around.
[02:01] <tonyyarusso> First, what do we mean by command line interface?
[02:01] <tonyyarusso> Basically, it's a whole way of interacting with your computer, a suite of programs, similar to the graphical equivalent when you combine gnome stuff, openoffice, metacity, nautilus, firefox, etc.
[02:02] <tonyyarusso> The first thing you deal with is what's called a "shell" - this is just a program that facilitates access to other command line programs, allows for basic interaction with the system, and sometimes offers you a few handy extra features.
[02:02] <tonyyarusso> In Ubuntu, the default shell when you log in interactively is called "bash", and the default one for running system scripts is "dash".
[02:03] <tonyyarusso> Others exists that you can check out, like csh, ksh, fish, and dozens of others.
[02:03] <tonyyarusso> For our purposes, we don't care too much about the differences right now - just know that multiple options exist.
[02:03] <tonyyarusso> To get access to a shell, there are three options.
[02:04] <tonyyarusso> If you're in a desktop environment right now, check the menus.  In Gnome it's under Applications -> Accessories -> Terminal.
[02:04] <tonyyarusso> KDE and XFCE users may see something labeled "Konsole" or "xterm".
[02:04] <tonyyarusso> You can also get to one by pressing Ctrl-Alt-1, leaving your graphical world behind entirely.  (Including this chat)  Get back with Ctrl-Alt-7.
[02:05] <tonyyarusso> To access a remote system over the network, you can use a tool called SSH.  use it like this:  ssh username@hostname, like ssh tony@tonyyarusso.com
[02:05] <tonyyarusso> When you get you shell open, you'll see what's called a prompt:  Mine looks like this:  anthony@sudbury:~$
[02:06] <tonyyarusso> Err, yeah, that should have been Ctrl-Alt-F1 and F7
[02:06] <tonyyarusso> Here, anthony is the username, sudbury is the hostname, ~ is the current working directory, and $ is a priviledge level indicator.
[02:07] <tonyyarusso> ~ is just shorthand for your home directory, as defined in /etc/passwd.  In my case, that's /home/anthony
[02:07] <tonyyarusso> For the last character, $ indicates that you're operating with normal user permissions, and # indicates root (administrator) permissions.
[02:08] <tonyyarusso> While we're on that note, on Ubuntu you don't normally log in as root - you use sudo instead.  Run 'sudo command' to run command as root, and you can use 'sudo -i' or 'sudo -s' to get a shell prompt with elevated privs for extended use.
[02:08] <tonyyarusso> Now that we're getting into the concept of commands, a quick note about some terminology.
[02:09] <tonyyarusso> Most commands have various options to them, also called switches, usually prefixed with - or -- (short and long option, respectively), and then arguments after those.
[02:10] <tonyyarusso> For instance, in the command 'ls -lah /home', `ls` is the command, `-lah` is actually three different switches, equivalent to -l -a -h, and `/home` is an argument (the directory I want to list).
[02:11] <tonyyarusso> To find out what options are supported for any given command and a ton of other information about how to use it, look for a man (manual) page.  For instance, type `man ls` for information about how to use the ls command.  (Press q to exit man when you're done and return to your shell)
[02:11] <tonyyarusso> Now that you know that, let's start seeing what you can do.
[02:11] <tonyyarusso> The first question is "Where the heck am I?"
[02:12] <tonyyarusso> Filesystems are complex, and it's easily to forget where you're working.  The `pwd` command will print the path of the directory you are currently in (print working directory).
[02:12] <tonyyarusso> Right after you've opened a terminal window, this is normally your home directory.
[02:12] <tonyyarusso> So for instance, I'd get this:
[02:12] <tonyyarusso> anthony@sudbury:~$ pwd
[02:12] <tonyyarusso> /home/anthony
[02:13] <tonyyarusso> To go somewhere else, use the `cd` command.  (This should be familar to DOS users).
[02:13] <tonyyarusso> anthony@sudbury:~$ cd /var
[02:13] <tonyyarusso> anthony@sudbury:/var$ pwd
[02:13] <tonyyarusso> /var
[02:14] <tonyyarusso> You can see there that not only does pwd tell me where I am, but my prompt changed to reflect it too.
[02:14] <tonyyarusso> This is because the prompt is actually a dynamic, configurable thing.
[02:14] <tonyyarusso> While I normally just leave it at the defaults (they're pretty sane), if you want to add other information to it you can, like the current time.  Take a look at http://www.linuxselfhelp.com/howtos/Bash-Prompt/Bash-Prompt-HOWTO-2.html for details on that.
[02:15] <tonyyarusso> Now that I'm in /var, how can I see what's there?  Well, that would be the ls command I referenced.  It will return a list of items in the current directory, or in the directory you pass as an argument
[02:15] <tonyyarusso> anthony@sudbury:/var$ ls
[02:16] <tonyyarusso> backups  cache  crash  games  lib  local  lock  log  mail  opt  run  spool  tmp
[02:16] <tonyyarusso> anthony@sudbury:/var$ ls /boot
[02:16] <tonyyarusso> abi-2.6.32-37-generic         memtest86+.bin
[02:16] <tonyyarusso> config-2.6.32-37-generic      System.map-2.6.32-37-generic
[02:16] <tonyyarusso> grub                          vmcoreinfo-2.6.32-37-generic
[02:16] <tonyyarusso> initrd.img-2.6.32-37-generic  vmlinuz-2.6.32-37-generic
[02:16] <tonyyarusso> lost+found
[02:16] <tonyyarusso> Now look at what adding some switches does:
[02:16] <tonyyarusso> anthony@sudbury:/var$ ls -lah
[02:16] <tonyyarusso> total 52K
[02:16] <tonyyarusso> drwxr-xr-x 15 root root  4.0K 2011-01-27 00:31 .
[02:16] <tonyyarusso> drwxr-xr-x 24 root root  4.0K 2012-01-12 02:13 ..
[02:16] <tonyyarusso> drwxr-xr-x  2 root root  4.0K 2012-01-12 02:46 backups
[02:16] <tonyyarusso> drwxr-xr-x 19 root root  4.0K 2011-02-26 02:45 cache
[02:16] <tonyyarusso> drwxrwxrwt  2 root root  4.0K 2010-04-13 15:52 crash
[02:16] <tonyyarusso> drwxr-xr-x  2 root root  4.0K 2011-01-27 00:31 games
[02:16] <tonyyarusso> drwxr-xr-x 68 root root  4.0K 2011-05-30 21:37 lib
[02:16] <tonyyarusso> drwxrwsr-x  2 root staff 4.0K 2010-07-29 02:42 local
[02:16] <tonyyarusso> drwxrwxrwt  3 root root    60 2012-01-14 07:41 lock
[02:17] <tonyyarusso> drwxr-xr-x 15 root root  4.0K 2012-01-14 07:41 log
[02:17] <tonyyarusso> drwxrwsr-x  2 root mail  4.0K 2011-07-15 23:20 mail
[02:17] <tonyyarusso> drwxr-xr-x  2 root root  4.0K 2011-01-27 00:18 opt
[02:17] <tonyyarusso> drwxr-xr-x 18 root root   640 2012-01-12 02:14 run
[02:17] <tonyyarusso> drwxr-xr-x  8 root root  4.0K 2011-01-27 00:27 spool
[02:17] <tonyyarusso> drwxrwxrwt  2 root root  4.0K 2012-01-12 02:16 tmp
[02:17] <tonyyarusso> As you can see, the options change how the command operates.  Here I used -l for long listing, -a to show hidden files (the dots), and -h to make the file sizes friendly (4.0K instead of 4096).
[02:17] <tonyyarusso> The long listing gives you a lot of useful information about files.
[02:18] <tonyyarusso> The first column is the permissions - For each "rwx" set, that's whether the owner, group, and others can read, write, and execute/list, respectively.
[02:18] <tonyyarusso> The second column is the number of links, which you probably don't care about.
[02:19] <tonyyarusso> The third is the file's owner.  The fourth is the group - people who are not necessarily the owner, but have been granted some extra set of rights to it.  For instance, you might use group to let your department read files but not edit them while blocking everyone else.
[02:19] <tonyyarusso> Then comes the file size, last modification date, and the file name.
[02:20] <tonyyarusso> Directories always show up as 4K - that's a technical detail with the filesystem.
[02:20] <tonyyarusso> "Hidden" files and directories are any that begin with a dot.  For instance, if you check your home directory you'll see a bunch that house settings and such, like ~/.gnome2 and ~/.mozilla
[02:21] <tonyyarusso> QUESTION Could you explain who/what is staff?
[02:22] <tonyyarusso> Here staff is a group of users, so you might have bob, alice, and mary all in the "staff" group on the system.  It just lets you bundle them together for a neater way of assigning permissions.  You'll find group definitions in /etc/group, and can create and modify them with the 'adduser' and 'addgroup' commands.
[02:23] <tonyyarusso> Now, listing files is fun and all, but what about moving them around, renaming, deleting, and such?
[02:24] <tonyyarusso> If you want to copy a file from one place to another, use `cp`, with source and destination as arguments, like this:  cp myfile /var/www/ (copies myfile from the current directory into the /var/www directory)
[02:24] <tonyyarusso> If you want to change the name while copying, just include the name as well as the directory: cp myfile /var/www/publicfile
[02:24] <tonyyarusso> To move a file (like copy, but removing the original), it's the same thing:  mv myfile /var/www/
[02:25] <tonyyarusso> Interestingly, renaming a file is also done with mv, not a separate command.  As far as the filesystem is concerned, you're moving the file with the old name to a new place, since names are places for it.
[02:26] <tonyyarusso> So, mv IMG_3098.JPG Sue_at_the_Beach.jpg
[02:26] <tonyyarusso> To delete, us rm (remove), with similar syntax: rm Sue_at_the_Beach
[02:26] <tonyyarusso> Random tidbit:  You can create a new, empty file with the `touch` command, or change the modification timestamp of an existing file.
[02:27] <ClassBot> JoseeAntonioR asked: What about if I want to delete a folder?
[02:27] <tonyyarusso> An excellent question!
[02:27] <tonyyarusso> For that, you'd use a similar command as for files, called rmdir (Remove Directory).
[02:28] <tonyyarusso> Meanwhile, creating a directory is done with mkdir (Make Directory).
[02:29] <tonyyarusso> Moving and copying directories use the same mv and cp commands as for files, although you will need the -r switch for cp (recursive).
[02:29] <tonyyarusso> Also, by default rmdir will refuse to remove a directory that is not empty (still has files in it), to prevent accidental deletions.  You can override this with a switch.  (rm can actually do it too)
[02:30] <tonyyarusso> Another file system feature you may want to use sometimes are links, but I'll let you read up on that on your own - `man ln` for some info.
[02:31] <tonyyarusso> Now, what about actually viewing and editing files instead of just moving them around?
[02:31] <tonyyarusso> There are a ton of tools for this sort of stuff, so we'll just hit the basics.
[02:31] <tonyyarusso> If you have a text file and want to print the contents of it to the screen, use `cat myfile`.
[02:31] <tonyyarusso> You can also use this to print a bunch of files together, like `cat file1 file2 file3`.
[02:32] <tonyyarusso> This works if the file is short, or if you're using a terminal emulator that supports scrolling, but sometimes you want to view a file in what's called a 'pager', so you can scroll back up and see all of it.
[02:32] <tonyyarusso> You can do this with the 'less' command (or 'more' - don't ask...)
[02:33] <tonyyarusso> For that the pageup and pagedown keys will let you navigate, although there are other keys too.
[02:33] <tonyyarusso> You might not need to see the entire file though, so there are tools that let you view just part of it.
[02:34] <tonyyarusso> These are 'head' and 'tail'.
[02:34] <tonyyarusso> If you just type 'head myfile', it will show the first ten lines of the file.  Tail shows the last ten.  You can change the number with a switch, so tail -25 myfile shows the last 25 lines.
[02:34] <tonyyarusso> By combining these you can view lines 30 through 50, or whatever (more on that later if we have time)
[02:35] <tonyyarusso> For editing text, my favorite is called `nano` - it's easy to use, so good for beginners.  Other people like things like vi or emacs as well, but they're harder to get the hang of.
[02:36] <tonyyarusso> Doing 'nano myfile' will open myfile in what's basically a rudimentary word processor, so you would use this to go in and change configuration files, for instance those dot files in your home folder (like .bashrc) or things in /etc
[02:37] <tonyyarusso> To save a file in nano, you use Ctrl-O (write OUT), then Ctrl-x to exit.  You'll see those explained along the bottom of the editor when it's open in case you forget.  (With Ctrl indicated as ^)
[02:37] <tonyyarusso> To look for particular text within a file, use the `grep` utility.  This accepts regular expressions if you know those.  Just `grep somepatterntomatch myfile`.
[02:39] <tonyyarusso> For instance, to see hits to your web site during this hour, you might do `grep 2012:20:[0-9]{2}:[0-9]{2}\ -0600` /var/log/apache2/access.log
[02:40] <tonyyarusso> err, misplaced the ` on that:  grep 2012:20:[0-9]{2}:[0-9]{2}\ -0600 /var/log/apache2/access.log
[02:41] <tonyyarusso> Another fun editing tool is sed - you can use this to replace particular strings in a file without manually going through in nano.  For instance I use this on every new installation to replace all of the "deb" lines in /etc/apt/sources.list to use my local package mirror instead of the public archives.
[02:42] <ClassBot> mani990 asked: how do i select different files in a single directory?
[02:42] <tonyyarusso> You can manually specify multiple files, or use shell "wildcards".
[02:43] <tonyyarusso> For instance, `rm *.jpg *.JPG *.jpeg *.JPEG` will delete all jpeg images - the * matches anything, so those mean "anything ending with these various file extensions".
[02:43] <ClassBot> mani990 asked: how do i give permissions to my folder?
[02:43] <tonyyarusso> This is the same as for files:  The chown command lets you change the owner and group, and chmod changes the "mode" (permissions).
[02:44] <tonyyarusso> Permissions can be specified in numbers or letters.  Start with the letters and worry about the numeric format later.
[02:44] <tonyyarusso> So, to add the "staff" group to something and give them read and write permissions, you'd do this:
[02:44] <tonyyarusso> chown anthony:staff somefile
[02:44] <tonyyarusso> chmod g+rw somefile
[02:45] <tonyyarusso> I separated the owner and group with a colon.  g+ means "add for the group", and "rw" means "read and write.  To add permission for everyone, do ugo+ or a+ (A for all, as shorthand for user+group+others)
[02:46] <tonyyarusso> -R is available as a switch to both to make them recursive (apply to everything under a directory)
[02:46] <tonyyarusso> Okay, we'll try to get a few more things in before we have to wrap up:
[02:46] <tonyyarusso> Package management - you can install and remove software from the command line, of course.
[02:47] <tonyyarusso> To find something you want, use 'apt-cache search' - here we see a different format.  'apt-cache' is the command, and 'search' is an operating mode.  It acts basically like a switch.
[02:47] <tonyyarusso> So, 'apt-cache search jabber' will show you a list of various software related to Jabber communication.
[02:48] <tonyyarusso> When you see one you like, use 'apt-get install', for instance 'apt-get install ejabberd'.
[02:48] <tonyyarusso> To uninstall, it's 'apt-get remove packagename'.
[02:48] <tonyyarusso> You can also list currently installed packages - the easiest way is 'dpkg -l' (no arguments).
[02:48] <tonyyarusso> Now some handy features of the shell that will save you tons of time.
[02:49] <tonyyarusso> First, you can access previous commands with the up arrow.  Scroll around with the up/down to find one you want, and you can use left/right, delete, and typing if you want to edit just a part of it without typing the whole thing.
[02:49] <tonyyarusso> You can also use the 'history' command to get a list of past commands, each with a number next to it.
[02:50] <ClassBot> There are 10 minutes remaining in the current session.
[02:50] <tonyyarusso> Here's where another shortcut comes in - just typing !! will run the last command again.  Typing !28 will run the command listed as #28 in history.
[02:50] <tonyyarusso> You can also make aliases for commands you use often.
[02:51] <tonyyarusso> For instance, instead of typing 'ls -lah' all the time, do this:
[02:51] <tonyyarusso> alias ll='ls -lah'
[02:51] <tonyyarusso> then just use 'll'
[02:52] <tonyyarusso> That will expire when you close the shell - put it in ~/.bashrc to make it permanent.
[02:52] <tonyyarusso> Now, a key feature of text utilities:  piping and redirection.
[02:53] <tonyyarusso> Piping uses the | character to send the output of one command to the input of another.  You can use this to "chain" commands together.  For instance, I can watch the authorization log for failures, ignore any from my own IP address, and filter to just attempts on the root account like this:
[02:53] <tonyyarusso> sudo tail -f /var/log/auth.log | grep Failed | grep -v 71.34.0.139 | grep root
[02:54] <tonyyarusso> Redirection allows you to write output to a file.  For instance, if I did sudo tail -f /var/log/auth.log | grep Failed | grep -v 71.34.0.139 | grep root > root_auth_failures , I would get a file created called root_auth_failures, and log entries would be written to it as they're created.
[02:54] <tonyyarusso> Normally the > redirection will overwrite the file each time you use it - if you want to append instead, use >>
[02:54] <tonyyarusso> A few final words:
[02:55] <ClassBot> There are 5 minutes remaining in the current session.
[02:55] <tonyyarusso> Once you're done, and want to log out, use 'exit'.  Ctrl-D does the same thing as exit.
[02:56] <tonyyarusso> To reboot, just do 'sudo reboot'.  For shutdown it's a little tricker - 'shutdown -h now' - specify -h for "halt", and "now" to say "immediately".  The shutdown command lets you do more complicated things, like shutting down an hour from now.
[02:56] <tonyyarusso> Some useful text utilities that weren't covered but you can check out with their man pages:  screen, ping, nl, sort, wc, tee, uniq, netstat,irssi, mutt, w3c, top, free, ps, kill
[02:57] <tonyyarusso> And one more fun example to give you a sense of the things you can do as you get into the scripting side of the shell:
[02:57] <tonyyarusso> for person in $(cat staff | sort | uniq); do mail -a "From: Tony Yarusso <tonyyarusso@ubuntu.com>" -a "Content-type: text/html; charset=UTF-8" -s "Check out my User Days class" -b $person "" < message.html ; done
[02:57] <tonyyarusso> That command reads a list of email addresses from a file, makes sure that any duplicate entries are removed, and sends an HTML formatted e-mail to each of those people.  Cool, huh?
[02:57] <tonyyarusso> Any more last questions?
[02:58] <tonyyarusso> Oh, another utility to check out - find
[02:59] <tonyyarusso> As you can see, there are about a zillion utilities out there.  You can also use the 'apropos' command to search for man pages that mention something, like 'apropos mail' to look for instructions on mailing with things that are already installed, and of course apt-cache search to find new things to install.
[02:59] <tonyyarusso> Thanks for coming, and happy command line usage!
[03:00] <ClassBot> Logs for this session will be available at http://irclogs.ubuntu.com/2012/01/15/%23ubuntu-classroom.html
[03:00] <pleia2> thanks for a great User Days everyone! quite a day! :D
[06:33] <DUCKY_> Why did ubuntu change from gz to lz flie system on the boot cd
[06:35] <benonsoftware> DUCKY_: Please see #ubuntu for support
[15:34] <medicus99> kein Vortrag?
[18:05] <pangolin> DeadmanIncJS: you will see  links  in the topic to logs        of past classes
[18:05] <pangolin> also the schedule for upcoming classes
[18:07] <DeadmanIncJS> yeah i clicked on it.  it was all at 2am today, so i missed it
[19:13] <zulware> hello there