Extra material for Software Carpentry shell lesson. Website here
Please see Guidelines for Contributors if you would like to contribute.
Extra Unix Shell Material
Home Page: http://carpentries-incubator.github.io/shell-extras/
License: Other
Extra material for Software Carpentry shell lesson. Website here
Please see Guidelines for Contributors if you would like to contribute.
The chapter 01-man-pages (http://swcarpentry.github.io/shell-extras/01-man-pages/) doesn't have a title and a clickable link in the main TOC at http://swcarpentry.github.io/shell-extras/
Currently there's some formatting issues which need to be cleaned up.
intro to job control. Not too fancy!
see:
https://github.com/swcarpentry/bc/blob/gh-pages/intermediate/shell/04-job.md
In the lesson on permissions, the command for removing all permissions for other users (non-owner, non-group) is given as chmod a= final.grd
. This will instead remove all permissions from owner and group members as well as others. I believe the command should be chmod o= final.grd
to remove permissions from other only.
Hi,
Could someone upload back the setup files for carpentries-incubator/shell-extras lesson?
Thanks a lot!
maybe just generally using a custom .bashrc? Discuss
The link to the definition for job control in the introduction seems to be broken. The link points to: https://carpentries-incubator.github.io/shell-extras/06-job-control/%7B%20page.root%20%7D%7D/reference/#job-control. It looks like it wants to link out to the reference page here: https://carpentries-incubator.github.io/shell-extras/reference.html#key-points
Introduction to unix permissions + how to set them
I can't find any codes or files here for shell-extras lesson.
Before we go filling it in with new content (#1), I think we should think about who would be taking this lesson, what we want them to learn, and how we'll advertize those goals to the intended audience. Maybe this should be shell-intermediate (meaning “what to take after shell-novice”)? Or shell-multi-host for interactions between hosts (scp, ssh), and shell-posix for the finer details of the POSIX shell and other POSIX-sepecified features (env, alias, job-control, permissions, man).
Personally, I prefer the shell-{area-you-want-to-learn-about}
approach, so learners/instructors can easily find the material they want. And lesson listings can organize the by-area lessons into serial curricula as they see fit.
A) Do lessons need to be numbered?
B) If so, is there a need for some sort of intentional numbering scheme, or can we just do first-come, first-served?
Per swcarpentry/bc issue 265
Please, consider adding a lesson
topic to the repository. To do so you can follow the help about how to add topics to the repository. Check out the topics that the Genomics R intro lesson has gotten to add others that may be relevant to this lesson.
This will help people to know which repositories are lessons and also could be used to automate analysis of the repositories.
Should bash strict mode be recommended as good practice? See http://redsymbol.net/articles/unofficial-bash-strict-mode/ which uses:
#!/bin/bash
set -euo pipefail
IFS=$'\n\t'
Personally I use set -e
most heavily, and generally just use the one line set -euo pipefail
after the hash-bang.
Originally raised as swcarpentry/shell-novice#251 but we agreed it was too advanced for the shell novice lesson.
See: swcarpentry/shell-novice#75
Could also include basic tips for navigating in less
, as that's a default 'reader' for a lot of things in the shell.
less
shortcuts), see shell-novice PR swcarpentry/shell-novice#75See also https://github.com/swcarpentry/bc/tree/gh-pages/intermediate/shell for starting material.
Add entries to reference.md
This lesson was previously hosted in the SWC GH organization, but not listed on the SWC lessons page, so not visible to many who were searching for more advanced shell resources. To increase visibility and community discussion and use of lessons outside of The Carpentries core curricula, we've migrated this resource to the Incubator.
@fmichonneau has updated the lesson template to enable support of Incubator lessons:
This update:
Creates a top-of-page banner to indicate that this lesson is in the incubator (and not a core Carpentries lesson). This banner is in addition to the existing "lesson life cycle" banner that appears on some official Carpentries lessons (for example the geospatial lessons) to indicate whether lessons are pre-alpha, alpha, beta, or stable.
Changes the license information to make it clear the copyright is not held by The Carpentries or any of its lesson programs.
Replaces The Carpentries (or SWC/DC/LC) logo in the upper left hand corner of the template with The Carpentries Incubator logo.
@fmichonneau has put together a PR to bring these template updates into this repo. Once this has been done, your lesson will appear on a "Community Contributed Lessons" page on The Carpentries website!
Looking forward to posting your lesson publically and getting the word out about this awesome resource!
A bunch of instructors from the University of Oslo (@heereman and myself, probably one more) are considering submitting a proposal to teach this material at CarpentryConnect Manchester in June this year. We feel there is a lot of useful material here that would be useful for those that use the unix shell regularly. However, the big gap is exercises. Would the maintainers (are that @gdevenyi and/or @ChristinaLK?) willing to put out a call to the community for creating sets of exercises between now and June?
SCP and the like. Paging @bshambaugh !
for everything else that doesn't fit? Something a beginner would understand, but is a helpful shortcut or common task. I'm thinking of:
cd -
tee
#24while read line
discuss!
Normally the SWC lessons have the website shown at the top of the repo right after the repo description. I don't have the ability to change this as a maintainer. Perhaps @ErinBecker can add this?
http://swcarpentry.github.io/shell-extras/
Thanks
There should be a lesson explaining the directory structure laid out in Noble's paper (1) and implemented here (2).
The weblink (http://swcarpentry.github.io/shell-extras/03-file-transfer.html) provided as an argument to the transferring file commands (wget, curl and lftp) is broken.
It generates the ERROR 404: File not found
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.