denysdovhan / learnyoubash Goto Github PK
View Code? Open in Web Editor NEWLearn you how to write your first bash script
Home Page: https://git.io/learnyoubash
Learn you how to write your first bash script
Home Page: https://git.io/learnyoubash
I just installed the learnyoubash workshop. And getting this error in Ubuntu 14.04.4. Nodejs version : v0.10.25
/usr/local/lib/node_modules/learnyoubash/utils/problem.js:6
module.exports = (dirname, getArgs) => {
^
SyntaxError: Unexpected token >
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object. (/usr/local/lib/node_modules/learnyoubash/exercises/hello_world/exercise.js:1:80)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
Hi! I really like what you've done with this workshopper!!
It seems like the output is a little funky on my machine,
I've only completed up to Positional Parameters, but that output seemed uniform up to this point. I'm willing to investigate further.
I noticed that the solution was in a separate markdown file that doesn't seem to get included. Might indicate something?
MacOS / iTerm 2
-In project five, the file diagram showing the user the intended result is shown as:
project-
├── dest
│ ├── index.js
│ └── util.js
├── src
│ ├── index.js
│ └── util.js
└── test
├── index.js
└── util.js
-Which would lead one to believe that the solution is:
#!usr/bin/env bash
RESULT=$(( $1 * ($2 + $3) ))
echo project-$RESULT/{dest,src,test}/{index.js,util.js}
-Unfortunately, this answer is incorrect.
-After about ten minutes of reworking my syntax, I noticed that the line showing the actual value the script should return is actually:
project-11/src/index.js project-11/src/util.js project-11/dest/index.js project-11/dest/util.js project-11/test/index.js project-11/test/util.js
-This means that the correct answer is actually:
#!usr/bin/env bash
RESULT=$(( $1 * ($2 + $3) ))
echo project-$RESULT/{src,dest,test}/{index.js,util.js}
-Unless this was an intentional exercise in attention to detail, I suggest either changing the file tree diagram to:
project-
├── src
│ ├── index.js
│ └── util.js
├── dest
│ ├── index.js
│ └── util.js
└── test
├── index.js
└── util.js
-Or the intended output to:
project-11/dest/index.js project-11/dest/util.js project-11/src/index.js project-11/src/util.js project-11/test/index.js project-11/test/util.js
Could not run: TypeError: Incorrect value of args option
at normalizeSpawnArguments (child_process.js:314:11)
at exports.spawn (child_process.js:372:38)
at Promise (/usr/local/lib/node_modules/learnyoubash/utils/execute.js:6:16)
at module.exports (/usr/local/lib/node_modules/learnyoubash/utils/execute.js:3:36)
at Object.run (/usr/local/lib/node_modules/learnyoubash/utils/problem.js:61:12)
at WA.executeExercise (/usr/local/lib/node_modules/learnyoubash/node_modules/workshopper-adventure/index.js:425:16)
at WA.process (/usr/local/lib/node_modules/learnyoubash/node_modules/workshopper-adventure/index.js:317:17)
at WA.run (/usr/local/lib/node_modules/learnyoubash/node_modules/workshopper-adventure/index.js:262:15)
at Object.exports.handler (/usr/local/lib/node_modules/learnyoubash/node_modules/workshopper-adventure/lib/commands/run.js:12:21)
at method.valid.$ (/usr/local/lib/node_modules/learnyoubash/node_modules/commandico/commandico.js:143:15)
I'm on node 7.10.1
When I try to very an answer there seems to be an issue. Screenshot below -
When run the code with bash functions.bash 50 76
the code seems to work properly. When I try to verify the code with learnyoubash verify functions.bash
, the output is not correct thus fails the test.
Also there are times when I only get the main
and nothing from the recursive functions. Like this in the screenshot below -
These are the instructions for Case Conditionals, exercise 8. Pay attention to the punctuation marks.
In this exercise you will create small image extensions checker.
Using case statement, check if the first positional parameter is an jpeg (or jpg), png, gif extension.
Output It is jpeg., It is png., It is gif. accordingly.
Take care about cases when positional argument contains any other extension (print [EXT] is not an image! in this cases).
For example:
./case.bash png
./case.bash js
./case.bash jpg
Output:
It is png.
js is not an image!
It is jpeg.
It seems the output requires an exclamation point at the end, even though in the description, only the "not an image" case requires an exclamation point.
As seen in this error:
## Check your solution:
Solution ===================
It is gif!
Your Attempt ===================
It is gif.
Difference ===================
It is gif. It is gif!
Doing the first exercise.
❯ learnyoubash run hello.bash
Hello, world!
[object Promise]
should not print the promise
Following error during install
$ sudo npm install -g learnyoubash
npm ERR! code 1
npm ERR! Command failed: /usr/bin/git clone -q git://github.com/codeclimate/javascript-test-reporter.git /home/saptarshi/.npm/_cacache/tmp/git-clone-67bd621d
npm ERR! /home/saptarshi/.npm/_cacache/tmp/git-clone-67bd621d/.git: Permission denied
npm ERR!
npm ERR! A complete log of this run can be found in:
npm ERR! /home/saptarshi/.npm/_logs/2017-07-18T05_34_43_194Z-debug.log
Ubuntu 16.04 LTS (Unity Desktop Env)
2017-07-18T05_34_43_194Z-debug.txt
Hello, you will be agree if I translate the workshop to spanish?
good work!
Here are the instructions for loops. They are incorrect because the exercise is to write even numbers, but the example is outputting odd numbers. In addition, it says to write the numbers in range between the first and second parameters. But the example includes 17, which is not between the first and second parameters. It's confusing if the exercise is to write an inclusive or exclusive list
Create a file named loops.bash.
The first two positional parameters which will be passed into your script are the limits.
You should write all even numbers in range between the first and second positional parameters.
Example:
./loops.bash 10 17
Output:
11
13
15
17
Hello, so I was going along with the lessons fairly smoothly until I got to the Parameters lesson to print out the first, third, and fifth parameter.
I've tried multiple methods but below is just an example of one
#!/usr/env/bin bash echo "1: $1" echo "3: $3" echo "5: $5"
The result in the cygwin window is below:
Is there something i'm doing wrong or is this an actual issue?
Also possibly not a great idea to intro recursion in a basic bash course?
Thoughts? Thank you.
here is the output.
~ doas npm install -g learnyounode
npm WARN deprecated @hapi/[email protected]: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/[email protected]: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated [email protected]: no longer maintained
npm WARN deprecated @hapi/[email protected]: Moved to 'npm install @sideway/address'
npm WARN deprecated @hapi/[email protected]: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/[email protected]: Switch to 'npm install joi'
changed 169 packages, and audited 170 packages in 21s
10 packages are looking for funding
run `npm fund` for details
6 vulnerabilities (3 moderate, 3 high)
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
The suggested solution for the debugging challenge is weird (or the challenge itself should be better phrased).
The challenge says: "You will receive positional parameters. These positional parameters are filenames."
&
"Create all these files"
The suggested solution contains the mv file*
command. While this is indeed a good solution, there was no way of knowing that the files would be named in the file* format, thus using mv file*
is a big assumption.
В readme - бите посилання (use Cygwin if you are on Windows)
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.