The document discusses how bash is invoked on Linux and Mac OS X systems. It shows the process tree from the terminal emulator to the login process to the shell invocation. It identifies that on Linux systems, /etc/passwd defines users and their default shell (typically /bin/bash). It also explores /etc/shadow, /etc/shells and shell configuration files like /etc/profile and ~/.bash_profile that control shell initialization and environment.
Bash in theory and in practice - part twoValerio Balbi
The document discusses the Bash shell, including its history, login process, main features, and syntax. It covers Bash basics like commands, functions, parameters, variables, redirections and scripting. Specific syntax like comments, quotes, loops, conditionals, arithmetic and logical expressions are examined in detail with examples. The document also explores Bash functions, curly braces and local variable definitions within functions.
Bash is a widely used command line shell for Linux and other Unix-like operating systems. The presentation discusses the history and evolution of Unix-based systems and introduces some of the key features of the Bash shell, including built-in commands, external commands, variables, expansion, loops, conditionals, I/O redirection, and user input handling. It highlights new features introduced in Bash version 4 such as associative arrays, expanded string manipulations, and coprocesses.
Bash is a shell that interprets commands and provides tools to write custom commands. It respects the POSIX standard and is maintained by Chet Ramey. Bash allows editing and completion of commands using readline. It supports expansions like tilde, variables, commands, arithmetic, brace, and more. Bash can operate in default or POSIX mode, which is a subset with no process substitution.
The document discusses common mistakes made in file input/output (I/O) that can lead to data loss. It notes that asynchronous I/O is faster than synchronous I/O but introduces consistency issues. File systems provide weaker consistency guarantees than databases, and operations like close() and rename() do not guarantee data is flushed to disk. The document recommends using transactions and writing to a temporary file followed by renaming to improve data durability.
GIT: Content-addressable filesystem and Version Control SystemTommaso Visconti
Git presentation, internals, advanced use and workflow examples.
Presentation by Tommaso Visconti http://www.tommyblue.it for DrWolf srl http://www.drwolf.it
Slides from a talk at HPC Admintech 2019 about containers, a brief review on containers, how to create a container using common linux tools and how to integrate Docker with Slurm.
- The document describes setting up Git and Gitosis for user access and repository management. It involves initializing an empty Git repository, generating SSH keys, and configuring Gitosis and post-update hooks to enable push access to managed repositories. The process sets up a dedicated 'git' system user and groups for secure administration of Git repositories.
Bash in theory and in practice - part twoValerio Balbi
The document discusses the Bash shell, including its history, login process, main features, and syntax. It covers Bash basics like commands, functions, parameters, variables, redirections and scripting. Specific syntax like comments, quotes, loops, conditionals, arithmetic and logical expressions are examined in detail with examples. The document also explores Bash functions, curly braces and local variable definitions within functions.
Bash is a widely used command line shell for Linux and other Unix-like operating systems. The presentation discusses the history and evolution of Unix-based systems and introduces some of the key features of the Bash shell, including built-in commands, external commands, variables, expansion, loops, conditionals, I/O redirection, and user input handling. It highlights new features introduced in Bash version 4 such as associative arrays, expanded string manipulations, and coprocesses.
Bash is a shell that interprets commands and provides tools to write custom commands. It respects the POSIX standard and is maintained by Chet Ramey. Bash allows editing and completion of commands using readline. It supports expansions like tilde, variables, commands, arithmetic, brace, and more. Bash can operate in default or POSIX mode, which is a subset with no process substitution.
The document discusses common mistakes made in file input/output (I/O) that can lead to data loss. It notes that asynchronous I/O is faster than synchronous I/O but introduces consistency issues. File systems provide weaker consistency guarantees than databases, and operations like close() and rename() do not guarantee data is flushed to disk. The document recommends using transactions and writing to a temporary file followed by renaming to improve data durability.
GIT: Content-addressable filesystem and Version Control SystemTommaso Visconti
Git presentation, internals, advanced use and workflow examples.
Presentation by Tommaso Visconti http://www.tommyblue.it for DrWolf srl http://www.drwolf.it
Slides from a talk at HPC Admintech 2019 about containers, a brief review on containers, how to create a container using common linux tools and how to integrate Docker with Slurm.
- The document describes setting up Git and Gitosis for user access and repository management. It involves initializing an empty Git repository, generating SSH keys, and configuring Gitosis and post-update hooks to enable push access to managed repositories. The process sets up a dedicated 'git' system user and groups for secure administration of Git repositories.
This document discusses the C programming language and its compilation process. It covers preprocessor directives, compiling, assembling, linking, and makefiles. It also briefly mentions language features like function prototypes, inline functions, header files, and magic tricks used in the C implementation.
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataAnne Nicolas
GNU poke is a new interactive editor for binary data. Not limited to editing basic ntities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them. Once a user has defined a structure for binary data (usually matching some file format) she can search, inspect, create, shuffle and modify abstract entities such as ELF relocations, MP3 tags, DWARF expressions, partition table entries, and so on, with primitives resembling simple editing of bits and bytes. The program comes with a library of already written descriptions (or “pickles” in poke parlance) for many binary formats.
GNU poke is useful in many domains. It is very well suited to aid in the development of programs that operate on binary files, such as assemblers and linkers. This was in fact the primary inspiration that brought me to write it: easily injecting flaws into ELF files in order to reproduce toolchain bugs. Also, due to its flexibility, poke is also very useful for reverse engineering, where the real structure of the data being edited is discovered by experiment, interactively. It is also good for the fast development of prototypes for programs like linkers, compressors or filters, and it provides a convenient foundation to write other utilities such as diff and patch tools for binary files.
This talk (unlike Gaul) is divided into four parts. First I will introduce the program and show what it does: from simple bits/bytes editing to user-defined structures. Then I will show some of the internals, and how poke is implemented. The third block will cover the way of using Poke to describe user data, which is to say the art of writing “pickles”. The presentation ends with a status of the project, a call for hackers, and a hint at future works.
Jose E. Marchesi
The document provides an introduction to shell scripting basics in UNIX/Linux systems. It discusses what a shell and shell script are, introduces common shells like bash, and covers basic shell scripting concepts like running commands, variables, conditionals, loops, and calling external programs. Examples are provided for many common shell scripting tasks like file manipulation, text processing, scheduling jobs, and more.
This document provides a summary of common Linux shell commands and shell scripting concepts. It begins with recapping common commands like ls, cat, grep etc. It then discusses what a shell script is, how to write basic scripts, and covers shell scripting fundamentals like variables, conditionals, loops, command line arguments and more. The document also provides examples of using sed, awk and regular expressions for text processing and manipulation.
UnQLite is an embedded key-value and document-oriented database with a simple API similar to SQLite. It uses a BSD license and supports cross-platform usage. Benchmarks show it has comparable or better performance than SQLite, Berkeley DB and other databases for common operations like storing, fetching, and iterating over large amounts of data. The developer is working on adding new storage engines to UnQLite.
Crafting Beautiful CLI Applications in RubyNikhil Mungel
The document describes a presentation on crafting beautiful command line applications using Ruby. The presentation discusses why the command line is useful, what makes a good CLI app, and some key principles for CLI apps like least astonishment, reversibility, config files, graceful failure, and honoring piping. It also covers input/output in CLI apps and libraries like OptionParser, Mixlib::CLI, and Thor that can help build CLI apps in Ruby.
This document provides an overview of ROS and Gazebo for robot simulation. It introduces ROS as a framework for robot software development that encourages code reuse. Key ROS concepts covered include nodes, topics, services, and packages. The document demonstrates creating simple ROS packages and nodes that publish, subscribe and use custom messages. Gazebo is introduced as a 3D physics simulator for robot control and environment simulation. Example demonstrations are provided on using Gazebo and ROS for SLAM with the PR2 robot in Rviz. Resources for further learning about ROS and Gazebo are also listed.
The document provides an introduction to UNIX shell scripting basics. It discusses what a shell and shell script are, how to run commands and write simple shell scripts using bash. It covers basics like variables, conditionals, loops, pipes and redirection to process inputs, outputs and errors when running programs from shell scripts.
In 2009 the PHP-FIG created PSR-0: an autoloading standard that helped to change the landscape of PHP forever, thanks in no small part to its integration with Composer. Well, PSR-0 was built in a land before PHP had namespaces, when Horde and PEAR were prevalent and Composer was but a twinkle in the eye of two developers. In December 2013 PSR-4 was released as a newer, shinier version of that standard.
The FIG has more standards happening, some of which may be out just in time for this talk.
The document provides an introduction to shell scripting basics in UNIX/Linux. It discusses what a shell and shell script are, introduces the popular bash shell, and covers running commands, variables, logic, and other shell scripting concepts. The key points covered include:
- A shell is a program that takes commands and runs other programs. Popular shells include bash, csh, tcsh, and ksh.
- A shell script is a text file containing shell commands that is executable. Creating and running a simple "Hello world" script is demonstrated.
- Running commands, pipes, redirection, variables, logic, and flow control like if/else, for loops are explained.
- Useful bash
The document discusses shell scripts, including what they are, their components, how to invoke them, get help, and definitions of terms. It provides examples of shell scripting concepts like arguments, regular expressions, quoting, variables, command forms, and simple commands. It also includes examples of shell scripts and proposes homework assignments involving shell scripts.
Introduction to Bash Scripting, Zyxware Technologies, CSI Students Convention...Zyxware Technologies
A workshop on "An introduction to BASH shell scripting". Conducted at CSI Students Convention at TKM College of Engineering, Kollam, Kerala on 15th September, 2012
http://www.zyxware.com/articles/3080/zyxware-conducts-workshop-on-bash-scripting-at-tkm-college-of-engineering-kollam
Introducing Command Line Applications with RubyNikhil Mungel
This document discusses building command line applications in Ruby. It covers using OptionParser and Mixlib::CLI for parsing arguments, Thor for building commands, testing CLI apps, interacting with the system via libraries like Mixlib::ShellOut, and logging to standard output and error. The target audience is developers looking to get started with Ruby command line programs.
The document provides information about the Go programming language. It discusses the history and creators of Go, key features of the language such as concurrency and garbage collection, basic Go code examples, and common data types like slices and maps. It also covers Go tools, environments, benchmarks showing Go's performance, and examples of companies using Go in production.
DevChatt 2010 - *nix Cmd Line Kung Foobrian_dailey
The document discusses using the command line interface and provides tips on navigation, commands, and customization including keyboard shortcuts, pipes and redirects, aliases, and functions. It promotes learning the shell through writing scripts and provides resources for further learning about bash, arguments, programmable completion, and command line tools. The presentation was given by Brian Dailey to discuss why and how to use the command line interface.
The document discusses UNIX shell scripts, including what they are, their components, how to invoke them, examples of arguments, variables, command forms, and simple commands that can be used in shell scripts. It provides examples of shell scripts that perform tasks like iterating through a string and checking for available disk space.
The document discusses shell scripts, including what a shell is, shell configuration, standard input/output/redirection, examples of shell scripts, and syntax for writing shell scripts such as for loops, if/else statements, and case statements. It also covers special parameters and gives an example homework assignment involving creating files for SPARCS 03 members and compressing them into a tarball.
This document provides an introduction to programming in C and using Unix commands. It discusses functions for input/output like printf, scanf, fopen, fclose, fscanf, and fprintf. Pipes are realized as file descriptors that link output to input. The sendmail command allows transmission of email from C programs by writing to a pipe opened with popen. Overall it covers basic I/O operations in C and how to interface with Unix commands like sendmail.
1) The document provides instructions for installing Globus Toolkit 4.0.4 on Ubuntu 6.10 or Debian testing. It outlines requirements and steps to download, compile, and configure Globus including setting up a simple CA for security certificates.
2) The steps also cover starting a Globus web service container, setting up GridFTP, and obtaining and signing host and user certificates to enable secure grid services.
3) Configuration is completed by editing profile files, creating users, directories and scripts, and modifying configuration files for services like xinetd, security certificates and the grid mapfile.
DCEU 18: Tips and Tricks of the Docker CaptainsDocker, Inc.
Brandon Mitchell - Solutions Architect, BoxBoat
Docker Captain Brandon Mitchell will help you accelerate your adoption of Docker containers by delivering tips and tricks on getting the most out of Docker. Topics include managing disk usage, preventing subnet collisions, debugging container networking, understanding image layers, getting more value out of the default volume driver, and solving the UID/GID permission issues with volumes in a way that allows images to be portable from any developer laptop and to production.
This document discusses the C programming language and its compilation process. It covers preprocessor directives, compiling, assembling, linking, and makefiles. It also briefly mentions language features like function prototypes, inline functions, header files, and magic tricks used in the C implementation.
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataAnne Nicolas
GNU poke is a new interactive editor for binary data. Not limited to editing basic ntities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them. Once a user has defined a structure for binary data (usually matching some file format) she can search, inspect, create, shuffle and modify abstract entities such as ELF relocations, MP3 tags, DWARF expressions, partition table entries, and so on, with primitives resembling simple editing of bits and bytes. The program comes with a library of already written descriptions (or “pickles” in poke parlance) for many binary formats.
GNU poke is useful in many domains. It is very well suited to aid in the development of programs that operate on binary files, such as assemblers and linkers. This was in fact the primary inspiration that brought me to write it: easily injecting flaws into ELF files in order to reproduce toolchain bugs. Also, due to its flexibility, poke is also very useful for reverse engineering, where the real structure of the data being edited is discovered by experiment, interactively. It is also good for the fast development of prototypes for programs like linkers, compressors or filters, and it provides a convenient foundation to write other utilities such as diff and patch tools for binary files.
This talk (unlike Gaul) is divided into four parts. First I will introduce the program and show what it does: from simple bits/bytes editing to user-defined structures. Then I will show some of the internals, and how poke is implemented. The third block will cover the way of using Poke to describe user data, which is to say the art of writing “pickles”. The presentation ends with a status of the project, a call for hackers, and a hint at future works.
Jose E. Marchesi
The document provides an introduction to shell scripting basics in UNIX/Linux systems. It discusses what a shell and shell script are, introduces common shells like bash, and covers basic shell scripting concepts like running commands, variables, conditionals, loops, and calling external programs. Examples are provided for many common shell scripting tasks like file manipulation, text processing, scheduling jobs, and more.
This document provides a summary of common Linux shell commands and shell scripting concepts. It begins with recapping common commands like ls, cat, grep etc. It then discusses what a shell script is, how to write basic scripts, and covers shell scripting fundamentals like variables, conditionals, loops, command line arguments and more. The document also provides examples of using sed, awk and regular expressions for text processing and manipulation.
UnQLite is an embedded key-value and document-oriented database with a simple API similar to SQLite. It uses a BSD license and supports cross-platform usage. Benchmarks show it has comparable or better performance than SQLite, Berkeley DB and other databases for common operations like storing, fetching, and iterating over large amounts of data. The developer is working on adding new storage engines to UnQLite.
Crafting Beautiful CLI Applications in RubyNikhil Mungel
The document describes a presentation on crafting beautiful command line applications using Ruby. The presentation discusses why the command line is useful, what makes a good CLI app, and some key principles for CLI apps like least astonishment, reversibility, config files, graceful failure, and honoring piping. It also covers input/output in CLI apps and libraries like OptionParser, Mixlib::CLI, and Thor that can help build CLI apps in Ruby.
This document provides an overview of ROS and Gazebo for robot simulation. It introduces ROS as a framework for robot software development that encourages code reuse. Key ROS concepts covered include nodes, topics, services, and packages. The document demonstrates creating simple ROS packages and nodes that publish, subscribe and use custom messages. Gazebo is introduced as a 3D physics simulator for robot control and environment simulation. Example demonstrations are provided on using Gazebo and ROS for SLAM with the PR2 robot in Rviz. Resources for further learning about ROS and Gazebo are also listed.
The document provides an introduction to UNIX shell scripting basics. It discusses what a shell and shell script are, how to run commands and write simple shell scripts using bash. It covers basics like variables, conditionals, loops, pipes and redirection to process inputs, outputs and errors when running programs from shell scripts.
In 2009 the PHP-FIG created PSR-0: an autoloading standard that helped to change the landscape of PHP forever, thanks in no small part to its integration with Composer. Well, PSR-0 was built in a land before PHP had namespaces, when Horde and PEAR were prevalent and Composer was but a twinkle in the eye of two developers. In December 2013 PSR-4 was released as a newer, shinier version of that standard.
The FIG has more standards happening, some of which may be out just in time for this talk.
The document provides an introduction to shell scripting basics in UNIX/Linux. It discusses what a shell and shell script are, introduces the popular bash shell, and covers running commands, variables, logic, and other shell scripting concepts. The key points covered include:
- A shell is a program that takes commands and runs other programs. Popular shells include bash, csh, tcsh, and ksh.
- A shell script is a text file containing shell commands that is executable. Creating and running a simple "Hello world" script is demonstrated.
- Running commands, pipes, redirection, variables, logic, and flow control like if/else, for loops are explained.
- Useful bash
The document discusses shell scripts, including what they are, their components, how to invoke them, get help, and definitions of terms. It provides examples of shell scripting concepts like arguments, regular expressions, quoting, variables, command forms, and simple commands. It also includes examples of shell scripts and proposes homework assignments involving shell scripts.
Introduction to Bash Scripting, Zyxware Technologies, CSI Students Convention...Zyxware Technologies
A workshop on "An introduction to BASH shell scripting". Conducted at CSI Students Convention at TKM College of Engineering, Kollam, Kerala on 15th September, 2012
http://www.zyxware.com/articles/3080/zyxware-conducts-workshop-on-bash-scripting-at-tkm-college-of-engineering-kollam
Introducing Command Line Applications with RubyNikhil Mungel
This document discusses building command line applications in Ruby. It covers using OptionParser and Mixlib::CLI for parsing arguments, Thor for building commands, testing CLI apps, interacting with the system via libraries like Mixlib::ShellOut, and logging to standard output and error. The target audience is developers looking to get started with Ruby command line programs.
The document provides information about the Go programming language. It discusses the history and creators of Go, key features of the language such as concurrency and garbage collection, basic Go code examples, and common data types like slices and maps. It also covers Go tools, environments, benchmarks showing Go's performance, and examples of companies using Go in production.
DevChatt 2010 - *nix Cmd Line Kung Foobrian_dailey
The document discusses using the command line interface and provides tips on navigation, commands, and customization including keyboard shortcuts, pipes and redirects, aliases, and functions. It promotes learning the shell through writing scripts and provides resources for further learning about bash, arguments, programmable completion, and command line tools. The presentation was given by Brian Dailey to discuss why and how to use the command line interface.
The document discusses UNIX shell scripts, including what they are, their components, how to invoke them, examples of arguments, variables, command forms, and simple commands that can be used in shell scripts. It provides examples of shell scripts that perform tasks like iterating through a string and checking for available disk space.
The document discusses shell scripts, including what a shell is, shell configuration, standard input/output/redirection, examples of shell scripts, and syntax for writing shell scripts such as for loops, if/else statements, and case statements. It also covers special parameters and gives an example homework assignment involving creating files for SPARCS 03 members and compressing them into a tarball.
This document provides an introduction to programming in C and using Unix commands. It discusses functions for input/output like printf, scanf, fopen, fclose, fscanf, and fprintf. Pipes are realized as file descriptors that link output to input. The sendmail command allows transmission of email from C programs by writing to a pipe opened with popen. Overall it covers basic I/O operations in C and how to interface with Unix commands like sendmail.
1) The document provides instructions for installing Globus Toolkit 4.0.4 on Ubuntu 6.10 or Debian testing. It outlines requirements and steps to download, compile, and configure Globus including setting up a simple CA for security certificates.
2) The steps also cover starting a Globus web service container, setting up GridFTP, and obtaining and signing host and user certificates to enable secure grid services.
3) Configuration is completed by editing profile files, creating users, directories and scripts, and modifying configuration files for services like xinetd, security certificates and the grid mapfile.
DCEU 18: Tips and Tricks of the Docker CaptainsDocker, Inc.
Brandon Mitchell - Solutions Architect, BoxBoat
Docker Captain Brandon Mitchell will help you accelerate your adoption of Docker containers by delivering tips and tricks on getting the most out of Docker. Topics include managing disk usage, preventing subnet collisions, debugging container networking, understanding image layers, getting more value out of the default volume driver, and solving the UID/GID permission issues with volumes in a way that allows images to be portable from any developer laptop and to production.
This document contains information about various bioinformatics tools and resources developed by Ben Busby at NCBI, including links to BLAST cloud software, Docker images, and GitHub repositories. It also lists upcoming hackathons focused on data analysis and encourages participation in the bioinformatics community through communication on LinkedIn and contributing to existing events.
Explains how Docker and Nix work as deployment solutions, in what ways they are similar and different, and how they can be combined to achieve interesting results.
SBA Security Meetup: I want to break free - The attacker inside a ContainerSBA Research
Container environments provide an improved level of security compared to “just-run it side by side on one box”. But is it enough? What can the attacker do with limited access? What can possibly go wrong?
We will do a hands on experiment what security measures are efficient and which are just a nice buzz-word.
This document provides instructions for setting up a workspace to build embedded Linux for the Raspberry Pi 3 board. It describes downloading source code and packages, configuring the build environment, building a basic Linux image, writing it to an SD card, and connecting to the board via serial terminal. Key steps include using Git to obtain source, modifying configuration files, issuing bitbake commands to compile the image, and using minicom to interact with the booted board over USB serial.
Walter gives an introduction to compiling PHP from source. Some key points covered include:
- Reasons for compiling PHP yourself include supporting old PHP versions, testing multiple versions, and using proprietary extensions.
- The build process involves running ./configure, make, and make install commands. Various configuration options can be specified.
- Popular PHP extensions like APC, Xdebug, PostgreSQL can be installed via PECL. Extensions are also compiled from source using phpize and make.
- The compiled PHP is typically installed to /usr/local/ and configurations made in the php.ini file.
ERP System Implementation Kubernetes Cluster with Sticky Sessions Chanaka Lasantha
ERP System Implementation on Kubernetes Cluster with Sticky Sessions:
01. Security Features Enabled in Kubernetes Cluster.
02. SNMP, Syslog and audit logs enabled.
03. Enabled ERP no login service user.
04. Auto-scaling enabled both ESB and Jboss Pods.
05. Reduced power consumption using the scale in future during off-peak days.
06. NFS enables s usual with ERP service user.
07. External Ingress( Load Balance enabled).
08. Cluster load balancer enabled by default.
09. SSH enabled via both putty.exe and Kubernetes management console.
10. Network Monitoring enabled on Kubernetes dashboard.
11. Isolated Private and external network ranges to protect backend servers (pods).
12. OS of the pos is updated with the latest kernel version.
13. Core Linux OS will reduce security threats.
14. Lightweight OS over small HDD space
15. Less amount of RAM usage has been enabled.
16. AWS ready.
17. Possible for exporting into Public cloud ENV.
18. L7 and L4 Heavy Load Balancing Enabled.
19. Snapshot Versioning Control Enabled.
20. Many More ………etc.
Git is a distributed version control system that provides the following benefits:
- It is lightweight, distributed, offers security and code integrity, and allows for easy branching. Common Git commands include add, commit, push, pull, clone, and status.
- Remote repositories can be accessed via SSH or HTTP protocols. Common workflows involve cloning repositories, fetching and checking out branches, pushing local commits, and pruning remote branches.
- Branching allows developers to work independently on features or bugs without disrupting the main line of development. Branches can be merged back together when complete.
2012 coscup - Build your PHP application on Herokuronnywang_tw
The document discusses deploying PHP applications on Heroku. It provides an overview of Heroku, including that it is a Platform-as-a-Service, was launched in 2007, uses Amazon Web Services, offers many add-ons, allows easy scaling, supports PostgreSQL, and offers some free usage. It then walks through deploying a basic "Hello World" PHP app on Heroku, including creating an app, adding code, committing and pushing to Heroku, and viewing the deployed app.
zebra is an open source implementation as a successor of GNU Zebra and Quagga project. Together with openconfigd, it will work as data plane agnostic Network Operation Stack working with variable protocol / functional modules.
This document summarizes the steps to build and run a Docker container for Nginx. It describes creating a Dockerfile that installs Nginx on Ubuntu, builds the image, runs a container from the image mounting a local directory, and commits changes to create a new image version. Key steps include installing Nginx, exposing ports 80 and 443, committing a container to create a new image with added files, and using Docker commands like build, run, commit, diff and inspect.
This document outlines the standard Go development workflow including setting up a GOPATH, writing Go code within a package, building, installing, testing, and using packages. It provides examples of creating a "hello world" program and string manipulation package with tests. The workflow demonstrates building packages locally and across packages by importing and using the installed packages.
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Jian-Hong Pan
Flatpak is a framework for distributing desktop applications and supported by most of Linux distributions. This talk shares how to package a HTTP server written in Python as a Flatpak app. And, runs it like a desktop application by launching a browser connecting to the server automatically.
https://hackmd.io/@starnight/Have_an_HTTP_Server_in_Flatpak
Talk given at Devoxx Belgium 2018
Spring Boot is awesome. Docker is awesome. Together you can do great things. But, are you doing it the right way? We'll walk you through, in detail, the optimal way to structure Docker images for Spring Boot applications for iterative development. Structuring your Docker images correctly is really important for teams doing continuous integration and continuous delivery. Using Docker best practices, we'll show you the code and the technologies used to optimize Docker images for Spring Boot apps!
This document provides solutions to common Linux commands and tasks. It covers topics such as environment setting, hardware and system specifications, file editing and compression, networking, performance monitoring, package management with RPM, and multimedia. Solutions are provided for tasks like changing the startup runlevel, monitoring swap size, editing files, getting the network IP and registering the hostname, and burning discs.
1. The document provides instructions for setting up a full Cadence Virtuoso design flow for a CMOS inverter design using the IHP 0.25um technology.
2. It describes how to create user accounts and directories to install Cadence tools and libraries. Paths are then set up to access the tools and libraries.
3. Instructions are provided to create a design library and cell view for the inverter schematic. Components are added from technology libraries and connected to create the schematic.
4. Simulation is then set up by choosing the transient analysis and selecting nets to plot the output signals.
Bash is not a second zone citizen programming languageRené Ribaud
Bash is a widely used command line interpreter and scripting language. It is the default shell for most Linux distributions. While Bash scripts are commonly used to perform important system tasks, they are not always written with the same discipline as other programming languages. Adopting practices like Bash strict mode, following style guides, using functions and testing can help make shell scripts more reliable. Productivity tools like Shellcheck, shfmt and Bats can aid in developing robust Bash scripts.
Similar to Bash in theory and in practice - part one (20)
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
5th LF Energy Power Grid Model Meet-up SlidesDanBrown980551
5th Power Grid Model Meet-up
It is with great pleasure that we extend to you an invitation to the 5th Power Grid Model Meet-up, scheduled for 6th June 2024. This event will adopt a hybrid format, allowing participants to join us either through an online Mircosoft Teams session or in person at TU/e located at Den Dolech 2, Eindhoven, Netherlands. The meet-up will be hosted by Eindhoven University of Technology (TU/e), a research university specializing in engineering science & technology.
Power Grid Model
The global energy transition is placing new and unprecedented demands on Distribution System Operators (DSOs). Alongside upgrades to grid capacity, processes such as digitization, capacity optimization, and congestion management are becoming vital for delivering reliable services.
Power Grid Model is an open source project from Linux Foundation Energy and provides a calculation engine that is increasingly essential for DSOs. It offers a standards-based foundation enabling real-time power systems analysis, simulations of electrical power grids, and sophisticated what-if analysis. In addition, it enables in-depth studies and analysis of the electrical power grid’s behavior and performance. This comprehensive model incorporates essential factors such as power generation capacity, electrical losses, voltage levels, power flows, and system stability.
Power Grid Model is currently being applied in a wide variety of use cases, including grid planning, expansion, reliability, and congestion studies. It can also help in analyzing the impact of renewable energy integration, assessing the effects of disturbances or faults, and developing strategies for grid control and optimization.
What to expect
For the upcoming meetup we are organizing, we have an exciting lineup of activities planned:
-Insightful presentations covering two practical applications of the Power Grid Model.
-An update on the latest advancements in Power Grid -Model technology during the first and second quarters of 2024.
-An interactive brainstorming session to discuss and propose new feature requests.
-An opportunity to connect with fellow Power Grid Model enthusiasts and users.
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Webinar: Designing a schema for a Data WarehouseFederico Razzoli
Are you new to data warehouses (DWH)? Do you need to check whether your data warehouse follows the best practices for a good design? In both cases, this webinar is for you.
A data warehouse is a central relational database that contains all measurements about a business or an organisation. This data comes from a variety of heterogeneous data sources, which includes databases of any type that back the applications used by the company, data files exported by some applications, or APIs provided by internal or external services.
But designing a data warehouse correctly is a hard task, which requires gathering information about the business processes that need to be analysed in the first place. These processes must be translated into so-called star schemas, which means, denormalised databases where each table represents a dimension or facts.
We will discuss these topics:
- How to gather information about a business;
- Understanding dictionaries and how to identify business entities;
- Dimensions and facts;
- Setting a table granularity;
- Types of facts;
- Types of dimensions;
- Snowflakes and how to avoid them;
- Expanding existing dimensions and facts.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
Project Management Semester Long Project - Acuityjpupo2018
Acuity is an innovative learning app designed to transform the way you engage with knowledge. Powered by AI technology, Acuity takes complex topics and distills them into concise, interactive summaries that are easy to read & understand. Whether you're exploring the depths of quantum mechanics or seeking insight into historical events, Acuity provides the key information you need without the burden of lengthy texts.
Skybuffer SAM4U tool for SAP license adoptionTatiana Kojar
Manage and optimize your license adoption and consumption with SAM4U, an SAP free customer software asset management tool.
SAM4U, an SAP complimentary software asset management tool for customers, delivers a detailed and well-structured overview of license inventory and usage with a user-friendly interface. We offer a hosted, cost-effective, and performance-optimized SAM4U setup in the Skybuffer Cloud environment. You retain ownership of the system and data, while we manage the ABAP 7.58 infrastructure, ensuring fixed Total Cost of Ownership (TCO) and exceptional services through the SAP Fiori interface.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
16. 19.06.2013
03.07.2013 @pvb265 #imolug
shell 1970: runcom (Multics) JCL (s/390)
1975-1978: Steve Bourne, at Bell Labs wrote sh
1978-1979: Bill Joy at BSD wrote csh
1981: tcsh is a fork of csh POSIX compliance
1983: David Korn wrote ksh
1989: Brian Fox wrote bash
1990: Paul Falstad wrote zsh
1997: bash 2.0
2004: bash 3.0
2011: bash 4.2 latest (now) stable
27. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Who said system to invoke bash
UnderWater
[root@www ~]# cat /etc/passwd|head -5
root :x :0 :0 :root :/root :/bin/bash
bin :x :1 :1 :bin :/bin :/sbin/nologin
daemon :x :2 :2 :daemon :/sbin :/sbin/nologin
adm :x :3 :4 :adm :/var/adm :/sbin/nologin
lp :x :4 :7 :lp :/var/spool/lpd :/sbin/nologin
Username Password UID GID Description Home Initialprogram
Linux Users Definitions
28. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Who said system to invoke bash
UnderWater
[root@www ~]# cat /etc/passwd|head -5
root :x :0 :0 :root :/root :/bin/bash
bin :x :1 :1 :bin :/bin :/sbin/nologin
daemon :x :2 :2 :daemon :/sbin :/sbin/nologin
adm :x :3 :4 :adm :/var/adm :/sbin/nologin
lp :x :4 :7 :lp :/var/spool/lpd :/sbin/nologin
Username Password UID GID Description Home Initialprogram
[root@www ~]# ls -l /etc/shells
-rw-r--r-- 1 root root 60 15 feb 2012 /etc/shells
Linux Users Definitions
29. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Who said system to invoke bash
UnderWater
[root@www ~]# cat /etc/passwd|head -5
root :x :0 :0 :root :/root :/bin/bash
bin :x :1 :1 :bin :/bin :/sbin/nologin
daemon :x :2 :2 :daemon :/sbin :/sbin/nologin
adm :x :3 :4 :adm :/var/adm :/sbin/nologin
lp :x :4 :7 :lp :/var/spool/lpd :/sbin/nologin
Username Password UID GID Description Home Initialprogram
[root@www ~]# ls -l /etc/shells
-rw-r--r-- 1 root root 60 15 feb 2012 /etc/shells
[root@www ~]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
Linux Users Definitions
30. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
what after login?
31. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
what after login?
32. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
33. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
1
2
4
3
5
34. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
1
2
4
3
5
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
if [ "$PS1" ]; then
. $i
else
. $i >/dev/null 2>&1
fi
fi
done
35. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
1
2
4
3
5
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
if [ "$PS1" ]; then
. $i
else
. $i >/dev/null 2>&1
fi
fi
done
36. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
1
2
4
3
5
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
37. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
1
2
4
3
5
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
38. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
1
2
4
3
5
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
39. 19.06.2013
03.07.2013 @pvb265 #imolug
bash the way to suit your bash
UnderWater
[root@www ~]# ls -l /etc/profile
-rw-r--r-- 1 root root 1029 21 set 2009 /etc/profile
[root@www ~]# ls -l /root/.bash_profile
-rw-r--r-- 1 root root 191 6 gen 2007 /root/.bash_profile
[root@www ~]# ls -l /etc/profile.d/
totale 104
-rwxr-xr-x 1 root root 766 21 lug 2011 colorls.csh
-rwxr-xr-x 1 root root 727 21 lug 2011 colorls.sh
-rwxr-xr-x 1 root root 3015 19 ago 2011 lang.csh
-rwxr-xr-x 1 root root 3466 19 ago 2011 lang.sh
…
[root@www ~]# ls -l /root/.bashrc
-rw-r--r-- 1 root root 176 6 gen 2007 /root/.bashrc
[root@www ~]# ls -l /etc/bashrc
-rw-r--r-- 1 root root 1708 21 set 2009 /etc/bashrc
what after login?
1
2
4
3
5
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
41. 19.06.2013
03.07.2013 @pvb265 #imolug
bash POSIX 1003.1 standard (IEEE Std 1003.1)
pazh-ics not poh-six
Command Interpreter
Default 4 Linux and Mac OS X
Bourne Again Shell ( as rebird or another Bourne)
A superset of Bourne shell
Include history and directory stack from C shell
Relative New concepts in the recents versions:
. 3.0 regex like in perl
. 4.0 hash to implement awk
Overview
42. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
43. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
[root@www ~]#set -o vi
Esc-k Esc-j
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
44. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
[root@www ~]#set -o vi
Esc-k Esc-j
beginning-of-line (C-a)
end-of-line (C-e)
forward-char (C-f)
backward-char (C-b)
forward-word (M-f)
backward-word (M-b)
clear-screen (C-l)
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
45. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
[root@www ~]# ls /root/.bash
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
46. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
[root@www ~]# ls /root/.bash +TAB+TAB
.bash_history .bash_profile .bashrc
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
47. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
[root@www ~]# ls /root/.bash +TAB+TAB
.bash_history .bash_profile .bashrc
[root@www ~]# mkfs +TAB+TAB
mkfs mkfs.ext2 mkfs.ext3 mkfs.vfat
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
48. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
export HISTFSIZE=10000
export HISTFILESIZE=10000
shopt -s histappend
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
49. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
$PS1 - primary prompt string, default s-v$ .
$PS2 - secondary, default is >
$PS3 - prompt for the select command
$PS4 - during an execution trace. default is +
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
50. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Overview
$PS1 - primary prompt string, default s-v$ .
$PS2 - secondary, default is >
$PS3 - prompt for the select command
$PS4 - during an execution trace. default is +
d : date "Tue May 26"
h : hostname up to the first '.'
t : current time HH:MM:SS
u : username of the current user
w : current working directory
$ : if UID is 0, a #, otherwise a $
Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
51. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
/etc/profile
/etc/profile.d/*
/root/.bash_profile
/root/.bashrc
/etc/bashrc
52. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
/etc/profile
/etc/profile.d/*
/root/.bash_profile
/root/.bashrc
/etc/bashrc
53. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
[root@www ~]# dirs
~
[root@www ~]# pushd /etc
/etc ~
[root@www etc]# pushd /tmp
/tmp /etc ~
[root@www tmp]# popd
/etc ~
[root@www etc]# dirs
/etc ~
54. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
bash -r
rbash
bash --restricted
55. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
bash -r
rbash
bash --restricted
vi
:set shell=/bin/sh
:shell
~$ rbash
~$ cd /
rbash: cd: restricted
~$ bash
~$ cd /
/$
56. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
bash -r
rbash
bash --restricted
vi
:set shell=/bin/sh
:shell
~$ rbash
~$ cd /
rbash: cd: restricted
~$ bash
~$ cd /
/$
rssh
57. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
- When a command in the hash table no longer
exists, Bash will re-search $PATH to find the
new location. This is also available with
‘shopt -s checkhash’.
- The message printed by the job control code
and builtins when a job exits with a non-zero
status is ‘Done(status)’.
- The message printed by the job control code
and builtins when a job is stopped is
‘Stopped(signame)’, where signame is,
for example, SIGTSTP.
And other 42...
58. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
to test $file
[ -e filepath ] true if file exists.
[ -x filepath ] true if file exists and exec.
[ -d filepath ] true if dir exists.
[ expr1 -a expr2 ] and condition
[ expr1 -o expr2 ] or condition
59. 19.06.2013
03.07.2013 @pvb265 #imolug
bash Function Implemented:
Command line editing
Command line completion
Unlimited size command history
Prompt control
Bash startup files
The Directory Stack
The Restricted Shell
Bash POSIX Mode
Bash conditional expressions
Overview
to test $file
[ -e filepath ] true if file exists.
[ -x filepath ] true if file exists and exec.
[ -d filepath ] true if dir exists.
[ expr1 -a expr2 ] and condition
[ expr1 -o expr2 ] or condition
for arithmetics
[ $VAR1 OP $VAR2 ] true if file exists.
OP := -gt -eq -ne -lt -ge -le