回答:
編集:あなたがwgetできることを知っているという以前の声明を見ていないので、これは少し厄介です...これを行う方法を知りたい人のためにここに残します。さらに、私の答えの以前のバージョンは機能しませんでしたが、このバージョンは(多少長くなりますが)
TEMP_DEB="$(mktemp)" &&
wget -O "$TEMP_DEB" 'http://path.to/my.deb' &&
sudo dpkg -i "$TEMP_DEB"
rm -f "$TEMP_DEB"
最初にURLを変更するだけです。これはエイリアスにするか、bash関数として記述することができます。
私はこれを取り巻く技術的およびセキュリティ上の問題があることを認識しています(自動更新を取得できない、ソースを信頼できるなど)。
それは可能ではない一時ファイルを作成せず。通常は次のようにします
### Does not work
wget --quiet --output-document=- http://example.com/path/to/package.deb | dpkg --install -
または多分
### Does not work
dpkg --install <(wget --quiet --output-document=- http://example.com/path/to/package.deb)
ただし、dpkgはmmapを使用してファイルにアクセスするため、どちらも機能しません。これに関するバグレポートがあります:#367297
最も速い方法はこのようなものです。クリックしてシャッターのインストールを開始します 。
名前をクリックするために使用されるURL:
http://packages.ubuntu.com/shutter
...そして、アイコンをクリックします:
http://apt.ubuntu.com/p/shutter
そして、はい。.DEBのインストールを完了するにはUbuntu Software Centerが必要です。それ以外の場合は、Nautilusまたはコマンドラインからインストールを実行する必要があります。
これに使用される完全なテキストはAsk Ubuntu専用ですので、これをアンカーに再フォーマットする必要があります:
[shutter](http://packages.ubuntu.com/shutter) [![Install shutter]
(https://i.stack.imgur.com/HjNGK.png)](http://apt.ubuntu.com/p/shutter)
詳細については、apturl wikiページを参照してください。
1パッケージ:
a href="apt:package"
いくつかのパッケージのバンドル:
a href="apt:package1,package2,package3"
リポジトリの有効化:
apturl apt:freevial?section=universe
そのため、ソフトウェアがデフォルトで有効なリポジトリにない場合は、「section =」を追加する必要があります。そうしないと、この方法を使用できず、ユーザーにダウンロードして自分でインストールする必要があります。
で試すことができcurl
ます。
ファイルを現在のフォルダーにダウンロードし、ローカルファイルからインストールするには:
curl -sLO https://apt.puppetlabs.com/puppetlabs-release-precise.deb && sudo dpkg -i puppetlabs-release-precise.deb
または/var/cache/apt/archives/
そこからダウンロードしてインストールします:
curl -sL -o/var/cache/apt/archives/puppetlabs-release-precise.deb https://apt.puppetlabs.com/puppetlabs-release-precise.deb && sudo dpkg -i /var/cache/apt/archives/puppetlabs-release-precise.deb
--install needs at least one package archive file argument
dpkg-deb: error:
は/ dev / FD / 63'はDebianのフォーマットarchive`ではありません
dpkg: error processing archive puppetlabs-release-precise.deb (--install):
私は実際に似たようなことをするスクリプトを持っています:
このスクリプトをコピーして貼り付けて~/bin
ください(このフォルダーが存在しない場合は作成してください):
#!/bin/bash
# ~/bin/dpkg
COUNT=0
for i in $@; do
echo $i | grep http 2>&1 > /dev/null
if [ $? == 0 ]; then
URL="$URL $i"
continue
fi
PASSTODPKG="$PASSTODPKG $i"
done
#Remove beginning and trailing space
URL=$(echo $URL | sed -e 's/^ //g' -e 's/ $//g')
if [ ! -z $URL ]; then
mkdir /tmp/debs
cd /tmp/debs
for i in $URL; do
wget "$i"
done
dpkg $PASSTODPKG /tmp/debs/*.deb
else
dpkg $PASSTODPKG
fi
次に、これを最後の行に追加します ~/.bashrc
PATH="~/bin:$PATH"
スクリプトはの単なるラッパーですdpkg
。~/.bashrc
ファイル内の行は、bash
入力するたびに、ではなく(スクリプト)dpkg
が実行されることを示しています。~/bin/dpkg
/usr/bin/dpkg
dpkg
URLが指定されていない場合、スクリプトは引数を渡すだけです。このスクリプトは複数のURLもサポートしています。動作する例を次に示します。
sudo dpkg -i http://www.example.com/file1.deb
sudo dpkg -i http://www.example.com/file1.deb http://www.example.com/file2.deb
sudo dpkg -i http://www.example.com/file1.deb existing.deb http://www.example.com/file2.deb
sudo dpkg -i existing.deb
lynx
電話dpkg
(またはディスプレイが利用可能な場合はソフトウェアセンター)に電話して、ダウンロードしたパッケージのインストールを提案できます。たとえば、次を使用します。
lynx http://archive.ubuntu.com/ubuntu/pool/main/z/zsh/
.deb
ファイルの1つをダウンロードすると、次のプロンプトが表示されます。
Info for debian package '/tmp/user/1000/L11127-6774TMP.udeb':
new debian package, version 2.0.
size 2545218 bytes: control archive=5830 bytes.
857 bytes, 21 lines control
14682 bytes, 169 lines md5sums
225 bytes, 20 lines * postinst #!/bin/sh
Package: zsh-doc
Source: zsh
Version: 5.1.1-1ubuntu1
Architecture: all
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Installed-Size: 5291
Depends: zsh-common (= 5.1.1-1ubuntu1)
Section: doc
Priority: optional
Homepage: http://www.zsh.org/
Description: zsh documentation - info/HTML format
Zsh is a UNIX command interpreter (shell) usable as an
interactive login shell and as a shell script command
processor. Of the standard shells, zsh most closely resembles
ksh but includes many enhancements. Zsh has command-line editing,
built-in spelling correction, programmable command completion,
shell functions (with autoloading), a history mechanism, and a
host of other features.
.
This contains the documentation in GNU info and HTML formats.
Original-Maintainer: Debian Zsh Maintainers <pkg-zsh-devel@lists.alioth.debian.org>
Do you wish to:
- I)nstall the package now,
- S)ave it to a file, or
- Q)uit now
Your choice (I/S/Q)? I
Installation of Debian packages needs to be done as root.
Enter command used to become root (default=sudo):
Installing package...
[sudo] password for bro3886:
(Reading database ... 756955 files and directories currently installed.)
Preparing to unpack .../user/1000/L11127-6774TMP.udeb ...
Unpacking zsh-doc (5.1.1-1ubuntu1) over (5.0.5-4ubuntu1~ubuntu14.04.1) ...
dpkg: dependency problems prevent configuration of zsh-doc:
zsh-doc depends on zsh-common (= 5.1.1-1ubuntu1); however:
Version of zsh-common on system is 5.0.5-4ubuntu1~ubuntu14.04.1.
dpkg: error processing package zsh-doc (--install):
dependency problems - leaving unconfigured
Processing triggers for doc-base (0.10.5) ...
Processing 1 changed doc-base file...
Processing triggers for install-info (5.2.0.dfsg.1-2) ...
Errors were encountered while processing:
zsh-doc
Done. Press <return> to continue:
(たぶん、インターネットからランダムなパッケージをインストールしようとするべきではありません。)
この質問に回答/投稿されてからしばらく経ちましたが、私の謙虚な貢献は次のとおりです。
#!/bin/bash
dir="/tmp/dpkg-get"
url="$1"
file="${url##*/}"
if [ "$EUID" -ne 0 ]
then
echo "Please run as root"
exit
fi
[ -d $dir ] || mkdir $dir
wget -q --show-progress -O "$dir/$file" $url && \
dpkg -i "$dir/$file"
dpkg-get
1つのコマンドでPastebin からインストールする方法:
sudo bash -c "wget http://pastebin.com/raw/GWu7qLwK -O- | tr -d '\r' > /usr/local/bin/dpkg-get && \
chmod a+x /usr/local/bin/dpkg-get"
使用方法(PowerShell 6 alphaのインストールなど):
sudo dpkg-get https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-alpha.10/powershell_6.0.0-alpha.10-1ubuntu1.16.04.1_amd64.deb
そして、それだけです。
私はそれが完璧ではないことを知っていますが、それは簡単で、うまくいきます。
インストールするものとダウンロードする場所に注意してください。
SOの回答に基づいたこの1ライナーは、 Ubuntu 15.04 で私の環境(64ビットUbuntu)のgithubで最新のatomリリースを特定し、それをインストールするのに役立ちました。
sudo dpkg -i $(curl -w "%{filename_effective}" -LO $(curl -s https://api.github.com/repos/atom/atom/releases | grep browser_download_url | grep '64[.]deb' | head -n 1 | cut -d '"' -f 4))
tmp dirでこれを行うと、tmpフォルダーを空にするたびにdebファイルがクリーンアップされます。それ以外の場合、ディスク容量が必要な場合は、debパッケージを手動で削除できます。
/etc/bash.bashrc
次のように追加できます(Chenのスクリプトからのアップグレードです)。
'dpkg-url'() {
COUNT=0
for package in "${urls[@]}"; do
if [[ $package = *http* ]]; then
urls+=("$package")
fi
dpkg_url="$dpkg_url "$package""
done
# Remove beginning and trailing spaces #
url=$(echo "$url" | sed -e 's/^ //g' -e 's/ $//g')
if [[ ! -z "$url" ]]; then
directory=$(mktemp -d);
trap 'rm -rf "$directory"' EXIT
cd "$directory" || exit
for package in "$url"; do
wget ""$package""
done
dpkg $dpkg_url "$directory"/*.deb
else
dpkg $dpkg_url
fi
}
次のように呼び出すと、このエラーが発生する理由がわかりませんが:
dpkg-url -i http://downloads.sourceforge.net/ldview/ldview-4.2-beta1.x64.deb
dpkg: error: need an action option
Type dpkg --help for help about installing and deinstalling packages [*];
Use `dselect' or `aptitude' for user-friendly package management;
Type dpkg -Dhelp for a list of dpkg debug flag values;
Type dpkg --force-help for a list of forcing options;
Type dpkg-deb --help for help about manipulating *.deb files;
Options marked [*] produce a lot of output - pipe it through `less' or `more' !
私はこれについて自分の2セントを与えると思った。次のコマンドを使用して、URLからパッケージをインストールできます。
wget insert_url_here
ダウンロードしたら、スーパーユーザーとしてdpkgコマンドを実行する必要があります。
sudo dpkg -i insert_file_name_here
次に、ターミナルに表示される指示に従ってください。
dpkg --skip-same-version -i $FILE
スクリプトから実行する場合にも使用することをお勧めします。詳細はこちら-manpages.debian.org/unstable/dpkg/dpkg.1.en.html